python中打开文件提示编码当时错误_Python:文件编码错误
從幾天開始,我就在用Python編寫的小程序中處理這個(gè)煩人的問(wèn)題。在
我經(jīng)常使用MediaWiki—最近我做文檔從.doc到Wikisource的轉(zhuǎn)換。在
在Libre Office中打開microsoftword格式的文檔,然后以Wikisource格式導(dǎo)出為.txt文件。我的程序正在搜索一個(gè)[[Image:]]標(biāo)記,并將其替換為從列表中獲取的圖像的名稱-該機(jī)制工作得非常好(非常感謝brjaga的幫助)。
當(dāng)我對(duì)我創(chuàng)建的.txt文件做了一些測(cè)試時(shí),一切都很好,但是當(dāng)我把一個(gè).txt文件放在Wikisource中時(shí),事情就不再那么有趣了:D
我收到了來(lái)自Python的消息:Traceback (most recent call last):
File "C:\Python33\final.py", line 15, in
s = ' '.join([line.replace('\n', '') for line in myfile.readlines()])
File "C:\Python33\lib\encodings\cp1250.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 7389: character maps to
這是我的Python代碼:
^{pr2}$
好的,所以我做了一些研究,發(fā)現(xiàn)這是編碼的問(wèn)題。所以我安裝了一個(gè)程序Notepad++,并將Wikisource.txt文件的編碼改為:UTF-8并保存了它。然后我對(duì)代碼做了一些修改:with open ("C:\\124_BPP_PL_PL.txt", encoding="utf8') as myfile:
s = ' '.join([line.replace('\n', '') for line in myfile.readlines()])
但我收到了一條新的錯(cuò)誤信息:Traceback (most recent call last):
File "C:\Python33\final.py", line 22, in
dest.write(s)
File "C:\Python33\lib\encodings\cp1250.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\ufeff' in position 0: character maps to
我真的被這件事纏住了。我想,當(dāng)我在記事本++中手動(dòng)更改編碼,然后告訴我設(shè)置的編碼-一切都會(huì)好起來(lái)的。在
請(qǐng)幫忙,提前謝謝。在
總結(jié)
以上是生活随笔為你收集整理的python中打开文件提示编码当时错误_Python:文件编码错误的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: mysql show schema_快速
- 下一篇: python中path语句什么意思_py