的向下箭頭(↓
)是CP437編碼有效字符。我正在寫一個程序,它需要與此編碼讀取和寫入文件,但是當我嘗試寫包含此字符文件的字符串,我收到以下錯誤:的Python失敗上有效CP437字符
File "C:\Python34\lib\encodings\cp437.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\u2193' in position 0: character maps to <undefined>
同樣的事情發生了其他CP437字符,例如↔
。 我的代碼如下,如果我做了一些愚蠢的有...
ENCODING = 'CP437'
def writeFile(name, text):
f = open(name, 'w', encoding = ENCODING)
f.write(text)
f.close()
根據維基百科,它在指定的編碼無效,所以爲什麼蟒蛇告訴我,否則?我怎樣才能解決這個問題?
「維基百科說,這是有效的」 - 什麼是有效的呢? Python是否積極支持CP437? – usr2564301
@RadLexus我的意思是它顯然在CP437中有效。而且,python在庫中有一個'cp437.py',所以它應該被支持。 – FlipTack
你使用的是什麼版本?蟒蛇3.5.1有很多的unicode棄用的 – rassar