python csv error: line contains null byte

Python的csv包固有问题
实践证明,当使用csv读取文件时,一旦文件里包含了’\0’或则’\x00’这种字符串时,会报错显示‘line contains null byte’。

一部分原因是文件中本身就存在这样的字符串,另一可能原因是该csv文件是从excel文件转换而来的,那么简单的处理的方式就是重新保存成csv。

如果不想修改文件,就需要将这些可能的null byte抽取掉。以下代码:

        with open(path, 'r', encoding="UTF8") as f:
            reader = csv.reader((line.replace('\0', '') for line in f), delimiter=",")
            for row in reader:
                print(row)
Yesterday is history,tomorrow ismystery,but today is a gift!That why it is called Present!
原文地址:https://www.cnblogs.com/VictorierJwr/p/15664762.html