gpt4 book ai didi

python - csv.DictReader 文件末尾异常

转载 作者:行者123 更新时间:2023-12-01 05:58:31 26 4
gpt4 key购买 nike

我使用以下代码作为解析 FCC License View 的概念证明 sample data set :

import csv

if __name__ == '__main__':
csv_file = open('fcc-license-view-data-sample.csv', 'rb')
dialect = csv.Sniffer().sniff(csv_file.read(1024))
csv_file.seek(0)
data = csv.DictReader(csv_file, dialect=dialect)
for item in data:
print item

模块打印完所有数据后,抛出异常:

File "C:\Python27\lib\csv.py", line 104, in next
row = self.reader.next()

_csv.Error: newline inside string

为什么会出现这个异常呢?我怎样才能避免它?

最佳答案

该 CSV 文件示例似乎在中线被切断。最后是

 "2600 TOWER OAKS BOULEVARD","ROCKVILLE","MD","2085

注意未闭合的引号。

如果您只想对示例进行操作,请不要处理最后一行。我认为这应该有效:

def all_but_last_line(file):
last = next(file)
for line in file:
yield last

if __name__ == '__main__':
with open('fcc-license-view-data-sample.csv', 'rb') as csv_file:
dialect = csv.Sniffer().sniff(csv_file.read(1024))
csv_file.seek(0)
data = csv.DictReader(all_but_last_line(csv_file), dialect=dialect)
for item in data:
print item

关于python - csv.DictReader 文件末尾异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11479144/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com