我正在编写一个小脚本,它从csv文件A中获取2列(电子邮件地址和电话号码),并将其与csv文件B中的2列(也包括电子邮件地址和电话号码)进行比较。
csv文件按顺序排列的列: 电子邮件地址,电话号码
按顺序csv文件B列: 电子邮件地址,地址,部门,位置,电话号码,租用日期
我想要的是从csv文件A中获取2列,并将其与csv文件B中的2个指定列进行比较。
在csv文件B中,如果电子邮件地址没有关联的电话号码,则会将其与csv文件A进行比较,并将电话号码复制到文件B
我正在测试代码,(我是编程新手),但我不确定如何抓取2列。我曾想过将两个文件中的用户名和密码放入Dict,并比较两个Dict,但我不知道如何从列中获取数据。
import csv
def compareCSVCol():
cybReader = csv.reader(open(r"C:/JostleMobileNumberCSV/CYBMobile.csv"))
josReader = csv.reader(open(r"C:/JostleMobileNumberCSV/jostleContributors.csv"))
for i in cybReader:
print(i[0])
感谢您的帮助!
答案 0 :(得分:1)
我会看看以下内容: Creating a dictionary from a csv file?
phoneDict = dict((row[0],row[1]) for row in cybReader)
with open('./out.csv', 'w') as outFile:
writer = csv.writer(outFile)
for row in josReader:
if not row[4]:
row[4] = phoneDict[row[0]]
writer.writerow(row)