Liebe Liste, Ich bin absoluter Python-Beginner. Habe zwei verschiedene Ordner mit Dateien (Ordner a mit Dateien a1, a2, a3... Und Ordner b mit Dateien b1, b2, b3...). Nun muss ich Datei a1 einlesen und Datei b1 als Spalte an a1 anhängen und diese nun in eine neue Datei rausschreiben. Waere klasse, wenn mir da jmd weiterhelfen koennte. Einlesen und ausschreiben mit readlines und writelines etc ist kein Problem fuer mich. Ich braeuchte nur einen Tipp, wie ich die zweite Datei sinnvoll als Spalte anhaenge und wie ich beide Schleifen sinnvoll ueber die beiden Ordner laufen lasse, damit auch wirklich a1 und b1 etc zusammenkommen. Vielen Dank schon mal fuer eure Hilfe. Daniela _______________________________________________ python-de maillist - python-de@python.net http://python.net/mailman/listinfo/python-de
Daniela Reimer schrieb:
Ich bin absoluter Python-Beginner. Habe zwei verschiedene Ordner mit Dateien (Ordner a mit Dateien a1, a2, a3... Und Ordner b mit Dateien b1, b2, b3...). Nun muss ich Datei a1 einlesen und Datei b1 als Spalte an a1 anhängen und diese nun in eine neue Datei rausschreiben. Waere klasse, wenn mir da jmd weiterhelfen koennte. Einlesen und ausschreiben mit readlines und writelines etc ist kein Problem fuer mich. Ich braeuchte nur einen Tipp, wie ich die zweite Datei sinnvoll als Spalte anhaenge und wie ich beide Schleifen sinnvoll ueber die beiden Ordner laufen lasse, damit auch wirklich a1 und b1 etc zusammenkommen.
Klingt nach einem Fall für sort(). Die Ordnerinhalte findest du als Liste über das "os" Modul. Dann sortier die Namen, damit beide in die gleiche Reihenfolge kommen. Allerdings verstehe ich nicht ganz, das dabei eine "Spalte" ist. Möchtest du die Zeilen nebeneinander schreiben? Sowas? from itertools import izip f1 = open(file1, 'r') f2 = open(file2, 'r') for line1, line2 in izip(f1, f2): print "%s,%s" % (line1[:-1],line2) Gibt jeweils eine Zeile von Datei 1 und Datei2 nebeneinander aus, durch Komma getrennt. Und das für alle Zeilen der Dateien - solange beide Zeilen enthalten. Überzählige Zeilen einer einzelnen Datei werden weggeworfen. Stefan _______________________________________________ python-de maillist - python-de@python.net http://python.net/mailman/listinfo/python-de
Ja, die Zeilen sollen nebeneinander geschrieben werden. Datei a besteht aus einer Tabelle mit verschiedenen Werten. Und Datei b aus ganz vielen Spalten mit jeweils einem Wert, die an die Tabelle in a als Spalte angehängt werden sollen. Probiere es gleich mal mit deiner Methode aus. Vielen Dank. Daniela Reimer schrieb:
Ich bin absoluter Python-Beginner. Habe zwei verschiedene Ordner mit Dateien (Ordner a mit Dateien a1, a2, a3... Und Ordner b mit Dateien b1, b2, b3...). Nun muss ich Datei a1 einlesen und Datei b1 als Spalte
an a1 anhängen und diese nun in eine neue Datei rausschreiben. Waere klasse, wenn mir da jmd weiterhelfen koennte. Einlesen und ausschreiben mit readlines und writelines etc ist kein Problem fuer mich. Ich braeuchte nur einen Tipp, wie ich die zweite Datei sinnvoll als Spalte anhaenge und wie ich beide Schleifen sinnvoll ueber die beiden Ordner laufen lasse, damit auch wirklich a1 und b1 etc zusammenkommen.
Klingt nach einem Fall für sort(). Die Ordnerinhalte findest du als Liste über das "os" Modul. Dann sortier die Namen, damit beide in die gleiche Reihenfolge kommen. Allerdings verstehe ich nicht ganz, das dabei eine "Spalte" ist. Möchtest du die Zeilen nebeneinander schreiben? Sowas? from itertools import izip f1 = open(file1, 'r') f2 = open(file2, 'r') for line1, line2 in izip(f1, f2): print "%s,%s" % (line1[:-1],line2) Gibt jeweils eine Zeile von Datei 1 und Datei2 nebeneinander aus, durch Komma getrennt. Und das für alle Zeilen der Dateien - solange beide Zeilen enthalten. Überzählige Zeilen einer einzelnen Datei werden weggeworfen. Stefan _______________________________________________ python-de maillist - python-de@python.net http://python.net/mailman/listinfo/python-de
participants (2)
-
Daniela Reimer
-
Stefan Behnel