Python CSV-包含空字节的行出现错误
在Python3中,这是解决CSV行中的空字节问题的最佳方法吗Python CSV-包含空字节的行出现错误,python,python-3.x,csv,Python,Python 3.x,Csv,在Python3中,这是解决CSV行中的空字节问题的最佳方法吗 file = open("file.csv", "rb") data = csv.reader((line.replace('\0','') for line in file), delimiter=",") 如果它能工作,那么你的过滤器看起来不错。我会去掉“rb”中的“b”,使您的代码与Python3兼容。定义“best”。这取决于您希望对空字节执行什么操作。您正在读取Unicode UTF16文件吗?尝试使用utf-16编码读
file = open("file.csv", "rb")
data = csv.reader((line.replace('\0','') for line in file), delimiter=",")
如果它能工作,那么你的过滤器看起来不错。我会去掉“rb”中的“b”,使您的代码与Python3兼容。定义“best”。这取决于您希望对空字节执行什么操作。您正在读取Unicode UTF16文件吗?尝试使用utf-16编码读取文件(或类似utf-16_le/be的内容,我不确定确切的术语)。最佳解决方法=绕过此情况的最佳方法。不,我没有处理utf-16文件。昨天,我在Stackoverflow上看到了其他人的答案,他们建议使用转换来处理utf-16文件,但我的情况并非如此。事实上,这是InstaPy项目生成的csv。按计划从rb模式中移除b。谢谢大家!✌️建议您将
newline=''
添加到open()
中,尽管这在CSV文档中是推荐的。