我正在尝试遍历具有“主列表”名称的 CSV 文件,并将其与另一个仅包含在场并拨打电话的人的姓名的 CSV 文件进行比较。
我正在尝试遍历主列表并将其与另一个 CSV 文件中的名称进行比较,获取此人拨打的电话次数,并编写一个包含呼叫次数的新 CSV 文件(如果未找到该名称或如果它是 0,我需要该列在那里有 0。
我不确定它是否是我忽略的非常简单的事情,或者我是否真的错误地处理了这个问题。
编辑格式化。
import csv
import sys
masterlst = open('masterlist.csv')
comparelst = open(sys.argv[1])
masterrdr = csv.DictReader(masterlst, dialect='excel')
comparerdr = csv.DictReader(comparelst, dialect='excel')
headers = comparerdr.fieldnames
with open('callcounts.csv', 'w') as outfile:
wrtr = csv.DictWriter(outfile, fieldnames=headers, dialect='excel', quoting=csv.QUOTE_MINIMAL, delimiter=',', escapechar='\n')
wrtr.writerow(dict((fn,fn) for fn in headers))
for lines in masterrdr:
for row in comparerdr:
if lines['Names'] == row['Names']:
print(lines['Names'] + ' has ' + row['Calls'] + ' calls')
wrtr.writerow(row)
elif lines['Names'] != row['Names']:
row['Calls'] = ('%s' % 0)
wrtr.writerow(row)
print(row['Names'] + ' had 0 calls')
masterlst.close()
comparelst.close()