我想读取一个 csv 文件并处理一些列,但我总是遇到问题。 遇到以下错误:
Traceback (most recent call last):
File "C:\Users\Sven\Desktop\Python\read csv.py", line 5, in <module>
for row in reader:
File "C:\Python34\lib\codecs.py", line 313, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x89 in position 446: invalid start byte
>>>
我的代码
import csv
with open("c:\\Users\\Sven\\Desktop\\relaties 24112014.csv",newline='', encoding="utf8") as f:
reader = csv.reader(f,delimiter=';',quotechar='|')
#print(sum(1 for row in reader))
for row in reader:
print(row)
if row:
value = row[6]
value = value.replace('(', '')
value = value.replace(')', '')
value = value.replace(' ', '')
value = value.replace('.', '')
value = value.replace('0032', '0')
if len(value) > 0:
print(value + ' Length: ' + str(len(value)))
我是 Python 的初学者,尝试过谷歌搜索,但很难找到正确的解决方案。
谁能帮帮我?
最佳答案
.PNG 文件的第一个字节是 0x89。并不是说这是你的问题,但 .PNG header 是专门设计的,因此它不会 不小心被解释为文本。
为什么你会有一个 .csv 文件实际上是一个 .png 我不知道。但如果有人不小心重命名了文件,肯定会发生这种情况。在 Windows 10 上,我偶尔会因为愚蠢的复选框功能而意外地批量重命名文件。为什么 Microsoft 决定台式机具有与平板电脑相同的 UI 控件是我的好主意......我不知道。
关于python - 'utf- 8' codec can' t 解码字节 0x89,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27219301/