0
我有兩個csv文件result.csv和sample.csv。Python重寫而不是追加
result.csv
M11251TH1230
M11543TH4292
M11435TDS144
sample.csv
M11435TDS144,STB#1,Router#1
M11543TH4292,STB#2,Router#1
M11509TD9937,STB#3,Router#1
M11543TH4258,STB#4,Router#1
我有一個python腳本如果result.csv符合該行的第一個字相匹配,這將比較兩個文件sample.csv,然後附加1否則在每行添加0 sample.csv
它應該看起來像M11435TDS144,STB#1,Router#1,1和M11543TH4258,STB#4,Router#1,0自M11543TH4258不是佛UND在result.csv
script.py
import csv
with open('result.csv', 'rb') as f:
reader = csv.reader(f)
result_list = []
for row in reader:
result_list.extend(row)
with open('sample.csv', 'rb') as f:
reader = csv.reader(f)
sample_list = []
for row in reader:
if row[0] in result_list:
sample_list.append(row + [1])
else:
sample_list.append(row + [0])
with open('sample.csv', 'wb') as f:
writer = csv.writer(f)
writer.writerows(sample_list)
樣本輸出(sample.csv)如果我運行該腳本兩次
M11435TDS144,STB#1,Router#1,1,1
M11543TH4292,STB#2,Router#1,1,1
M11509TD9937,STB#3,Router#1,0,0
M11543TH4258,STB#4,Router#1,0,0
我每次運行該腳本,1和0正在被添加到一個新的列sample.csv中。每次運行腳本時都有任何方法,我可以替換附加列而不是增加列。
爲什麼生活困難?只需更改輸出文件的名稱即sample_result.csv。然後你的代碼工作。所有你以後要做的是處理新文件而不是sample.csv。 –