ich habe folgendes Szenario bei dem ich Hilfe benötige.
Ich habe X Dateien, die ich durchsuchen möchte und bestimmte Zeilen dieser Dateien in eine TXT kopiere. Das klappt auch wunderbar.
Jetzt möchte ich allerdings zusätzlich noch einen anderen Wert, eine Nummer, einer bestimmten Zeile auslesen und diese soll immer als erstes in der Textdatei stehen. Es kann also sein, dass diese Nummer erst in einer Zeile steht NACHDEM schon andere Zeilen kopiert worden sind.
Die Textdatei soll später quasi so ausehen:
Nummer
Kopierte Zeile 1
Kopierte Zeile 2
Kopierte Zeile 3
...
Leerzeile
Nummer der nächsten Datei
Kopierte Zeile 1 Datei 2
Kopierte Zeile 2 Datei 2
Kopierte Zeile 3 Datei 2
...
usw.
Momentan habe ich das über 2 verschiedene FOR-Schleifen versucht, aber die zweite wird nicht durchlaufen.
Hat jemand eine Idee?
Code: Alles auswählen
import os
dirpath = irgendeinpfad
dirpathNeu = irgendeinneuerpfad
output = irgendeinetxt
dateien = os.listdir(dirpath)
if os.path.isfile(output):
os.remove(output)
suchphrase = irgendeinwort
for file in dateien:
if file.endswith(irgendeindateiformat):
datei = open(dirpath+'/'+file, 'r')
dateiNeu = open(output, 'a')
for line in datei.readlines():
if line.find(kriteriumfürnummer) != -1:
doknummer = line.split('=')[1]
dateiNeu.write(doknummer+'\n')
for line in datei.readlines():
if line.find(suchphrase) != -1:
dateiNeu.write(line.split('=')[1])
dateiNeu.write('\n')
datei.close()
dateiNeu.close()