【发布时间】:2020-06-11 11:15:12
【问题描述】:
我想用 python3.7 读取一个 csv 文件,但是我的代码给了我以下错误:
Traceback (most recent call last):
File "python_to_csv.py", line 6, in <module>
for row in csv_data:
File "/usr/lib/python3.7/codecs.py", line 322, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb3 in position 24: invalid start byte
这是我的代码:
import csv
csv_data = csv.reader(open('videos.export-full.csv', 'r'), delimiter=';')
for row in csv_data:
print (row)
我该如何解决这个问题并将记录插入数据库? 您可以从http://li2146-47.members.linode.com/videos.export-full.csv 下载 csv 文件的副本以自行测试。
【问题讨论】:
-
这能回答你的问题吗? Python 3: CSV files and Unicode Error
-
不,它没有回答我的问题
-
open默认会使用系统默认编码解码成 unicode,你应该通过open('some.csv', newline='', encoding='utf-8')指定编码
标签: python encoding python-3.7