Der folgende Code ist, um die Daten in File1
aus den Spalten 2, 3, 4, 8 zu lesen und schreiben Sie in NewFile
. Die Daten in jeder Spalte 2 (die bereits in temp_list
gespeichert ist) sollten in File3
gesucht werden. Falls gefunden, werden die Daten in der dritten Spalte jeder Zeile in File3
mit den in temp_list
gespeicherten Daten angehängt. Aber die zweite for
Schleife berücksichtigt nur die column2 Daten in der ersten Zeile. In den verbleibenden Zeilen werden die Daten in Spalte 2 nicht berücksichtigt.Wie schreibe ich die Daten in die neue Spalte in bestehenden CSV-Datei mit Python-Skript
Ich gab Drucken var1
in der zweiten Schleife, um zu sehen, ob jede Spalte 2 Daten (kopiert in Newfile
) in Betracht gezogen wird. Aber die Ausgabe zeigt nur in der ersten Zeile von File3
Wert. Werte in anderen Zeilen werden nicht gesucht. Kann mir bitte jemand helfen, das Problem in meinem Code zu verstehen?
import csv
f1 = csv.reader(open("C:/Users/File1.csv","rb"))
f2 = csv.writer(open("C:/Users/NewFile.csv","wb"))
f3 = csv.reader(open("C:/Users/File3.csv","rb"))
for row_f1 in f1:
if not row_f1[0].startswith("-"):
temp_list = [row_f1[1],row_f1[2],row_f1[3],row_f1[7]]
var1 = row_f1[1]
for row_f3 in f3:
if var1 in row_f3:
temp_list.append(row_f3[2])
f2.writerow(temp_list)
Bitte lesen Sie [_What sollte ich tun, wenn jemand meine Frage beantwortet? _] (Http://stackoverflow.com/help/someone-answers) – martineau