我今天一整天都在坚持这一点,但基本上我想要达到的是,我有两列的csv1,另一列有5列的csv2。你知道吗
CSV1型
id1,10
id2,20
id3,22
id4,59
CSV2型
id1,x,x,x,15
id11,x,x,x,32
id2,x,x,x,22
id3,x,x,x,42
id8,x,x,x,36
id4,x,x,x,47
现在我想从csv1读取,在csv1中读取id1,在csv2中找到相同的id1,然后用csv1中的值更新csv2。对csv1的每一行执行相同的操作,并基于这些值更新csv2。所以更新后的csv2
id1,x,x,x,10
id11,x,x,x,32
id2,x,x,x,20
id3,x,x,x,22
id8,x,x,x,36
id4,x,x,x,59
到目前为止,我有以下代码,但我不知道如何更新列回csv2。你知道吗
with open(csv2, 'rU') as outCSV:
outreader = csv.reader(outCSV)
outcol1 = []
outcol5 = []
for row in outreader:
outcol1.append(row[0])
outcol5.append(row[4])
with open(inputcsv, 'rU') as inCSV:
inreader = csv.reader(inCSV)
for row in inreader:
incol1 = row[0]
incol2 = row[1]
for i, name in enumerate(outcol1):
if incol1 == name:
outcol5[i] = incol2
print outcol5 #The updated column list.
那么现在,我如何写回这个列表,它是csv2的更新列。如果我使用write行,它会写入整个列,但不会更新列。感谢您的帮助。谢谢
目前没有回答
相关问题 更多 >
编程相关推荐