Kann das Ergebnis der IF Abfrage nicht speichern
Verfasst: Sonntag 20. Dezember 2020, 13:04
Das ist die Daten csvcodesfile:
15001; 100
16001; 101
18001; 102
60613; 103
60624; 104
98002; 105
ALA77; 106
ALA77R; 107
3230000000000; 108
with open('C:/users/PycharmProjects/testordner/CodeszumSuchenTest.csv', 'r', encoding="cp850") as csvcodesfile:
csvleser1 = csv.reader(csvcodesfile, delimiter=';') # für CodeszumSuchen - csvleser1
zeile = csvleser1 # codeszumsuchen
print("Zeile 1")
for row in zeile: # codeszumsuchen
with open('C:/users/PycharmProjects/testordner/dataklein.csv', 'r', encoding="cp850") as csvdatafile:
csvleser2 = csv.reader(csvdatafile, delimiter=';') # für datanorm
zeile2 = csvleser2 # datanorm
with open('C:/users/MELACH/PycharmProjects/testordner/dataselek.csv', 'w', newline='') as daten:
writer = csv.writer(daten, delimiter=';')
for elem in zeile2: # datanorm
if elem[0] == 'A' and (elem[2] == row[0]): #selektieren nur der A-Sätze
print("Das ist die elem", elem)
writer.writerow(elem)
Das Print Ergebnis nach Start des Programmes:
Das ist die elem ['A', 'N', '15001', '00', 'Test Artikel', '48cm, Mauerwerksbau', '1', '0', 'ST', '1445', '572Z', '134', ' ', '']
Das ist die elem ['A', 'N', '16001', ....
Das ist die elem ['A', 'N', '18001',....
Das ist die elem ['A', 'N', '60613',....
Das ist die elem ['A', 'N', '60624', ....
Das ist die elem ['A', 'N', '98002',....
Das ist die elem ['A', 'N', '3230000000000', '00', ......
Das Ergebnis ist auch in Ordnung nur wird immer nur die LETZTE Zeile in die Datei dataselek.csv gespeichert,
und ich komm nicht drauf warum. Würde gerne alle angedruckten Zeile in eine Datei speichern.
Datei dataselek.csv:
A;N;3230000000000;00;Zwanzigster Testartikel;FT Leerverrohrung 4 Fach;1;0;ST;5431;296Z;134; ;
Könnt Ihr mir da bitte Helfen. Danke im Vorraus
15001; 100
16001; 101
18001; 102
60613; 103
60624; 104
98002; 105
ALA77; 106
ALA77R; 107
3230000000000; 108
with open('C:/users/PycharmProjects/testordner/CodeszumSuchenTest.csv', 'r', encoding="cp850") as csvcodesfile:
csvleser1 = csv.reader(csvcodesfile, delimiter=';') # für CodeszumSuchen - csvleser1
zeile = csvleser1 # codeszumsuchen
print("Zeile 1")
for row in zeile: # codeszumsuchen
with open('C:/users/PycharmProjects/testordner/dataklein.csv', 'r', encoding="cp850") as csvdatafile:
csvleser2 = csv.reader(csvdatafile, delimiter=';') # für datanorm
zeile2 = csvleser2 # datanorm
with open('C:/users/MELACH/PycharmProjects/testordner/dataselek.csv', 'w', newline='') as daten:
writer = csv.writer(daten, delimiter=';')
for elem in zeile2: # datanorm
if elem[0] == 'A' and (elem[2] == row[0]): #selektieren nur der A-Sätze
print("Das ist die elem", elem)
writer.writerow(elem)
Das Print Ergebnis nach Start des Programmes:
Das ist die elem ['A', 'N', '15001', '00', 'Test Artikel', '48cm, Mauerwerksbau', '1', '0', 'ST', '1445', '572Z', '134', ' ', '']
Das ist die elem ['A', 'N', '16001', ....
Das ist die elem ['A', 'N', '18001',....
Das ist die elem ['A', 'N', '60613',....
Das ist die elem ['A', 'N', '60624', ....
Das ist die elem ['A', 'N', '98002',....
Das ist die elem ['A', 'N', '3230000000000', '00', ......
Das Ergebnis ist auch in Ordnung nur wird immer nur die LETZTE Zeile in die Datei dataselek.csv gespeichert,
und ich komm nicht drauf warum. Würde gerne alle angedruckten Zeile in eine Datei speichern.
Datei dataselek.csv:
A;N;3230000000000;00;Zwanzigster Testartikel;FT Leerverrohrung 4 Fach;1;0;ST;5431;296Z;134; ;
Könnt Ihr mir da bitte Helfen. Danke im Vorraus