[英]Reading UTF8 Encoded File in PyCharm
我正在嘗試讀取2個文本文件,其中一個以UTF8編碼。 我在PyCharm中使用Python 3。
2個文件中的示例:
1.
its group are in Spain .
its group are in Antarctica .
2.
sus grupos estan en España .
sus grupos estan en Antártida .
在命令行中,我使用:
paste -d "\n" hw5-tiny.en tiny.es | python3 ibm.py
將文件讀入sys.stdin。
在我的代碼中,我使用以下內容讀取粘貼的文件:
#!/usr/bin/env python
#coding=utf8
import itertools
import sys
for fgn_sent,eng_sent in itertools.zip_longest(*[sys.stdin]*2):
print(fgn_sent)
然后我得到錯誤:
Traceback (most recent call last):
File "ibm0.py", line 33, in <module>
initialize_probabilities()
File "ibm0.py", line 13, in initialize_probabilities
for fgn_sent,eng_sent in itertools.zip_longest(*[sys.stdin]*2):
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 863: ordinal not in range(128)
第13行是上方for...
行的行。
這篇文章回答了我的問題: 如何在Python 3中設置sys.stdout編碼?
我在命令行中添加了PYTHONIOENCODING=utf-8:surrogateescape1
。
paste -d "\n" tiny.en tiny.es | PYTHONIOENCODING=utf-8:surrogateescape python3 ibm0.py
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.