【发布时间】:2018-01-11 05:22:54
【问题描述】:
我刚开始使用 Python3。我正在尝试使用 Rodeo IDE 打开一个 csv 文件
fp = open('Proteomics_Data.csv') # open file on read mode
lines = fp.read().split("\n") # create a list containing all lines
我收到一个错误,我将其粘贴在下面。
UnicodeDecodeError: 'ascii' codec can't decode byte 0xef in position 0: ordinal not in range(128)
---------------------------------------------------------------------------
UnicodeDecodeError Traceback (most recent call last)
<ipython-input-347-aebf19dd596a> in <module>()
----> 1 lines = fp.read().split("\n")
/Users/alessandro/anaconda/lib/python3.6/encodings/ascii.py in decode(self, input, final)
24 class IncrementalDecoder(codecs.IncrementalDecoder):
25 def decode(self, input, final=False):
---> 26 return codecs.ascii_decode(input, self.errors)[0]
27
28 class StreamWriter(Codec,codecs.StreamWriter):
UnicodeDecodeError: 'ascii' codec can't decode byte 0xef in position 0: ordinal not in range(128)
到目前为止,我发现终端没有设置为 UTF-8,但显然 Python 3 不需要 UTF-8。我不确定这是否是与 IDE 相关的问题?
【问题讨论】:
-
尝试在
open中指定编码 -
有不同的编码,如 utf-8 utf-16 等,因此请尝试指定其中任何一种,看看是否有效
-
@AI14 为未来的裁判和读者发布了答案
标签: python-3.x csv utf-8