[英]Match dictionary keys to existing csv file
我对这个问题有点迷茫。 这是我所做的。
第一:
我创建了一个字典,将ID设置为键,将其他信息设置为csv文件(文件A)中的值。
import csv
A_ID = {}
'''This makes the File A dictionary'''
with open("file_A.csv", 'r') as f:
reader = csv.reader(f)
A_ID = {rows[0]:rows[1:] for rows in reader}
输出:
'35': ['1', 'Florida Ave', 'Tampa']
现在,我有另一个文件(文件B),我需要查找它的ID并将其与刚创建的字典中的文件A的ID匹配。 然后将字典的值作为新列添加到文件B中。 这是我到目前为止的内容:
'''Create the loop that matches dictionary keys to ID in file B'''
with open("file_B", 'r') as output:
reader = csv.reader(output)
for row in reader:
if row[2] = A_ID:
print(row[2])
返回错误:
File ".\mb_active.py", line 15
if row[3] = active_id:
^
SyntaxError: invalid syntax
预期结果:
State, ID, Car, Address, Street, City
FL, 35, Chevy, 1, Florida Ave, Tampa
地址,街道,城市是A_ID词典中的值。 其他所有内容都来自文件B。我不能使用熊猫,我必须保留文件A的字典以备后用。 如果熊猫是实现这一目标的唯一途径,那可以,但是请解释为什么? 另外,如果你们对自己学习python有任何提示,请分享! <3
非常感谢您抽出宝贵的时间查看此内容!
除了语法错误之外,您的实现也是错误的。 row[2]
是一个ID,因此您应询问A_ID
相应的条目。 这样的事情可能会起作用
a_row = A_ID.get(row[2], None)
if a_row:
print(row + a_row)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.