CSV读取器:TypeError:不支持+的操作数类型:“NoneType”和“str”

2024-05-16 23:25:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我的CSV阅读脚本突然遇到问题。我的工作流程是获取一个csv列表行信息,使用记事本将其转换为utf-8。然后我在上面运行这个代码。在

现在我开始得到以下错误:

Traceback (most recent call last):
File "C:\Users\x\x\x\uploader\user_db_and_upload.py", line 121, in <module>
csv_dict_reader(f_obj, x_obj, n_obj)
File "C:\Users\x\x\x\uploader\user_db_and_upload.py", line 57, in csv_dict_reader
name = data_in_list[x]['firstname'] + " " + data_in_list[x]['surname']
TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'

当我再次尝试该过程时,我遇到了一个单独的错误,它说它找不到另一个密钥(即,有一个名为'firm'的密钥,它会转而说这是密钥错误,它找不到它。)

我想我搞不懂的是,如果我把它转换成utf-8,却什么代码都没改,为什么我会发现自己处于这种境地。原来的密码是错的吗?任何事都会有帮助的。在

代码:

^{pr2}$

Tags: andcsv代码inpyobjdb错误
1条回答
网友
1楼 · 发布于 2024-05-16 23:25:24

我认为问题是你用utf-8编码文件,但是用python打开它们,就好像它们是用默认编码一样。我不知道您的默认编码是什么-它取决于您的系统和地区-但它可能不是utf-8。在

最简单的解决方法就是不使用记事本重新编码。在

我想你想把重组后的文件写成utf-8:但这很简单。只需更改在write模式下打开文件的语句以指定encoding=utf-8。在

相关问题 更多 >