我試圖打開帶有以下命令的一些配置文件:的UnicodeDecodeError在Python 3.5試圖打開文本文件時
f=open(os.path.join(root, name),mode='rt',errors='ignore')
不過,我升級到Python 3.5後收到以下錯誤。
for line in f:
File "C:\python35-32\lib\encodings\cp1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 57: chara
cter maps to <undefined>
此代碼工作得很好時,我跑了使用Python 2.7。我試圖將編碼指定爲utf8或latin1,但現在都沒有工作。如果任何人都能向我推薦一條前進的道路,這將會非常有幫助。
如果我可以忽略該錯誤並轉到下一行,那就沒問題了。我怎樣才能跳過錯誤的部分?
我對python 3不是很熟悉。我認爲你打開一個8位編碼的文件(例如latin1),而解釋器嘗試utf-8。你應該檢查位置57的字節。你可以追加周圍塊的十六進制轉儲(只有幾個字節)嗎? – clemens