打开文件时指定了 encoding='utf-8',但是运行脚本还是出现了报错,尝试用记事本另存查看 CSV 文件的真实编码也是 UTF-8 以及添加错误处理参数(errors='ignore'),运行还是出现相同的问题,有小伙伴遇到类似问题的吗,求指点~ 再次尝试读取文件使用绝对路径,并使用 chardet.detect() 获取文件实际编码,将检测到的编码应用到文本读取模式中,还是出现了相同的问题。
看错误提示不是 gbk decoder 在解析文件吗。是不是 csv.read 也需要设置编码哦
这个试了一下,也是不行的呢,请问需要什么特殊处理吗
你的 csv 不是纯的吧, 1.直接打开应该是带了格式的那种, 2.或者用 pycharm 打开文本,能看到不是单纯的 逗号隔开的,或者第一个行有 ** 之类的字符
直接用 pycharm 打开文本,这个应该只有逗号隔开的呢,记得之前是可以跑通的,后面其他项目安装过 excelReader 插件,不知道是不是因为这个导致的,但是现在把插件卸载了就还是会出现报错问题。
你可以自己用 py 创建一个带中文的 csv,再 read 看会不会出错,不出错就说明原来你读的那个是个脏文件……还出错的话,建议你换 vscode,验证一下看看是不是 IDE 的设置造成的
尝试新建个 csv 文档试试 (txt 纯文本改名)? 不行再试试这个 encoding='utf-8-sig'
按说指定了 utf8 不应该再提示 gbk 编码问题,是否有其他地方的代码在读文件,仔细看看完整的 stacktrace 看是否是这一段代码报错的呢。或者单独把这一段拿出来运行试试。
ide 工具、输入文件编码、输出文件编码全部换成 GBK 试下,如果没报错那就把 ide 工具、输入文件编码、输出文件编码,全换成 utf-8
这种问题,可以直接问豆包,比任何人都回答的好
嗯嗯找到问题了,是在其他项目配置插件的时候在该项目所在盘新建了一个 pytest.ini 配置文件,导致读取文件时出了问题,感谢~
感谢各位提供的思路~