CSV mit Skript aktualisieren/bearbeiten

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
thisiskaplan
User
Beiträge: 3
Registriert: Donnerstag 22. Juni 2017, 09:13

Guten Tag Zusammen!

Ich bin gerade dabei ein Skript in Pyton zu schreiben, das eine gewisse Spalte zweier CSV-Dateien vergleicht und bei einer Abweichung vom zweiten Dokument den Zelleninhalt durch den des ersten Dokuments ersetzt. Gewissermaßen eine Aktualisierung einer csv mit expliziter Bearbeitung von Werten an gewissen Stellen.

Mir geht es in erster Linie nur darum, wie ich gezielt in einer Spalte die entsprechenden Zeileneinträge durchsuchen und ggf. durch einen anderen Wert ersetzen kann. Das Lesen und alles weitere hat bei meinen minimaltests bereits ohne Probleme funktioniert.

Vielen Dank schon einmal im voraus und viele Grüße!
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

@thisiskaplan: Dateien kann man nicht ändern. Das bedeutet, Du mußt die ganze Datei lesen und neu schreiben.
thisiskaplan
User
Beiträge: 3
Registriert: Donnerstag 22. Juni 2017, 09:13

Sirius3 hat geschrieben:@thisiskaplan: Dateien kann man nicht ändern. Das bedeutet, Du mußt die ganze Datei lesen und neu schreiben.
Vielen Dank für die Antwort! Dann ist meine Frage, wie ich denn die Einträge in einer bestimmten Spalte möglichst geschickt durchsuchen kann? Bzw gibt es geeignete Pattern, mit denen so etwas bewerkstelligt wird? Natürlich möchte die sauberste Lösung anwenden :D
BlackJack

@thisiskaplan: Was heisst denn in diesem Fall „durchsuchen“? Falls man die Datensätze der beiden Dateien paarweise verarbeitet, also Datensatz 1 aus Datei 1 mit Datensatz 1 aus Datei 2, dann Datensatz 2 aus Datei 1 mit Datensatz 2 aus Datei 2, und so weiter, dann muss man ja nichts suchen. Da nimmt man einfach die `zip()`- oder `itertools.izip()`-Funktion um über die Datensätze aus beiden Dateien zu iterieren.

Sollte das nicht so einfach sein, weil die Zeilen nicht 1:1 paarweise zusammen gehören, dann fehlen Informationen um sagen zu können wie man am besten vorgeht.
thisiskaplan
User
Beiträge: 3
Registriert: Donnerstag 22. Juni 2017, 09:13

BlackJack hat geschrieben:@thisiskaplan: Was heisst denn in diesem Fall „durchsuchen“? Falls man die Datensätze der beiden Dateien paarweise verarbeitet, also Datensatz 1 aus Datei 1 mit Datensatz 1 aus Datei 2, dann Datensatz 2 aus Datei 1 mit Datensatz 2 aus Datei 2, und so weiter, dann muss man ja nichts suchen. Da nimmt man einfach die `zip()`- oder `itertools.izip()`-Funktion um über die Datensätze aus beiden Dateien zu iterieren.

Sollte das nicht so einfach sein, weil die Zeilen nicht 1:1 paarweise zusammen gehören, dann fehlen Informationen um sagen zu können wie man am besten vorgeht.
Ich werde mich mal in die genannten Methoden einlesen, vielen Dank!
Antworten