Seite 1 von 1

Sucht eine Datei mit der hoechsten Nummer

Verfasst: Montag 16. November 2015, 12:52
von einefrage
Guten Tag liebe Community. Ich habe folgendes Problem und hoffe ihr könnt mir weiterhelfen.

Ich möchte aus meiner Verzeichnis die Datei mit der höchsten Nummer, also z.b (datei001.bin, datei002.bin, datei003.bin) -> datei003.bin suchen und dann eine neue .tmp-Datei mit einer Nummer höher erstellen und öffnen. (z.b datei004.tmp)
Vielen Dank im Voraus! :D
Das ist bisher mein Ansatz:

Code: Alles auswählen

files=os.listdir(PATH)
for fname in files:
    if fname[-4:0]='.bin' && fname[5:8]

        status = true
        while status 
        filenum = filenum + 1
        tmpfilename = PATH + "/" + daten + filenum + .tmp
        f = open(tmpfilename)

Re: Sucht eine Datei mit der hoechsten Nummer

Verfasst: Montag 16. November 2015, 13:27
von Sirius3
@einefrage: was soll das für eine Programmiersprache sein? Du bist hier in einem Pythonforum, ist das richtig? Das Problem besteht aus drei Schritten:
1. Finde alle Dateien mit dem Muster "datei[zahl].bin"
2. Extrahiere die Zahl aus den Dateinamen.
3. Finde das Maximum aller Zahlen.

Ersteres geht am einfachsten mit glob.glob("datei[0-9][0-9][0-9].bin"), die restlichen Punkte solltest Du ohne while-Schleife hinbekommen können.

Re: Sucht eine Datei mit der hoechsten Nummer

Verfasst: Montag 16. November 2015, 21:28
von darktrym
Oder google mal nach numerischen sortieren.

Re: Sucht eine Datei mit der hoechsten Nummer

Verfasst: Montag 16. November 2015, 21:32
von BlackJack
Wenn die Zahlen immer die gleiche Anzahl von Stellen haben und mit führenden Nullen aufgefüllt sind, dann kann man auch ganz einfach die Dateinamen sortieren.