python3读取csv _csv.Error: line contains NUL
python3 读取稍大一点的 CSV 文件时,经常会出现这个错误:
for row in csv_reader:
_csv.Error: line contains NUL
出现 _csv.Error: line contains NUL 错误通常是因为 CSV 文件中存在不可见的 NUL 字符(空字符),这会干扰 Python 的 csv.reader。这是文件读取的问题,通常发生在文件编码或格式异常时。
所以替换掉就行:
with open("puresai.csv", "r", encoding="utf-8", newline='') as f:
# 替换掉 NUL 字符
content = f.read().replace('\0', '')
csv_reader = csv.reader(content.splitlines())
# 逐行读取数据
for row in csv_reader:
count += 1
....
运行时有发现会被 Killed, 估计是文件太大,内存爆了,改成按行替换就行。
with open("puresai.csv", "r", encoding="utf-8", newline='') as f:
# 使用 csv 模块逐行读取 CSV 数据
csv_reader = csv.reader((line.replace('\0', '') for line in f)) # 逐行去除 NUL 字符
# 逐行读取数据
for row in csv_reader:
count += 1
...
高频问题,记录一下,希望对你有用。
python3读取csv _csv.Error: line contains NUL
https://blog.puresai.com/2024/09/22/525/