我收到了格式错误的 csv 文件(无法控制生成此 CSV 的应用程序)
CSV 的标题和第一行如下所示:
"Start Time"
"End Time"
"Service"
"255/06:06:54","255/06:54:42","S2 AVAIL"
这是我用来读取 csv 的代码:
import csv
import os
import sys
rootPath = os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..'))
inputFile = open(rootPath + '\\input\\' + sys.argv[1], 'rt')
sys.path.append(rootPath + '\\common')
for row in csv.reader(inputFile, dialect='excel'):
if row:
print(row)
这是我收到的输出:
['"Start Time"']
['End Time']
['Service']
['255/06:06:54', '255/06:54:42', 'S2 AVAIL']
第一个问题是奇怪的字符(可能缺少编码选项?)标题也是错误的,不能在该格式上使用 DictReader,这对于我必须使用 CSV 进行的编辑很有用。
我可以用正确格式的标题重新编写一个新的 CSV,这不是问题,但我不知道如何跳过 CSV 的前 3 行!?或者我可以用即将到来的 CSV 格式阅读它吗?
这是我希望使用 csv.reader 获得的输出:
['Start Time', 'End Time', 'Service']
['255/06:06:54', '255/06:54:42', 'S2 AVAIL']
或使用 csv.DictReader:
OrderedDict([('Start Time', '255/06:06:54'), ('End Time', '255/06:54:42'), ('Service', 'S2 AVAIL')])
慕姐4208626
相关分类