एक पीएमएल (पाम मार्कअप भाषा) फ़ाइल को ठीक करने की कोशिश में, ऐसा प्रतीत होता है कि मेरी टेस्ट फ़ाइल में गैर-ASCII वर्ण हैं जो मेकबुक को शिकायत कर रहा है। समाधान पीएमएल में सभी गैर-ASCII वर्णों को तोड़ना होगा।पाइथन का उपयोग करके विस्तारित एसीआईआई को कैसे हटाया जाए?
तो अजगर में इसे ठीक करने के प्रयास में, मैं
import unicodedata, fileinput
for line in fileinput.input():
print unicodedata.normalize('NFKD', line).encode('ascii','ignore')
है हालांकि, यह एक त्रुटि है कि रेखा होना चाहिए "यूनिकोड, str नहीं" का परिणाम है। यहां एक फ़ाइल खंड है।
\B1a\B \tintense, disordered and often destructive rage†.†.†.\t
इस बिंदु पर संसाधित होने के लिए लाइन को सही ढंग से पास करने का तरीका बिल्कुल नहीं है।
आप किसी भी चरित्र जिसका ASCII मूल्य 255 से भी बड़ा है को फ़िल्टर करना चाहते हैं? –
कड़ाई से बोलते हुए, विस्तारित ASCII जैसी कोई चीज़ नहीं है। एएससीआईआई 0 से 127 के मानों को परिभाषित करता है। उससे अधिक कुछ भी मनमाने ढंग से व्याख्या किया जा सकता है। शायद आपको शब्द * गैर-ASCII वर्ण * का उपयोग करना चाहिए। – dreamlax
संबंधित: टर्मिनल आउटपुट के लिए सुरक्षित बचाना फ़ंक्शन http://stackoverflow.com/questions/437476/safe-escape-function-for-terminal-output – jfs