Also, ich habe eine funktionierende Lösung, aber es ist hässlich und scheint un-idiomatisch. Das Problem ist das:
Für einen Verzeichnisbaum, in dem jedes Verzeichnis eingerichtet ist:
.xc
Datei .x
Datei und nichts anderes. Ich würde gerne, geben Sie den Root-Pfad und gehen Sie den Baum mit xc()
auf den Inhalt von .xc
fies, x
auf den Inhalt zu .x
Dateien, und dann die gleiche Sache zu den Inhalt der untergeordneten Ordner tun .
Tatsächlicher Code mit Erklärung würde geschätzt werden.
Danke!
Die Funktion os.walk
durchläuft rekursiv eine Verzeichnisstruktur und gibt alle Datei- und Unterverzeichnisnamen zurück.
Sie müssen also nur die Erweiterungen .x
und .xc
aus den Dateinamen erkennen und Ihre Funktionen anwenden, wenn sie dies tun (ungeprüfter Code folgt):
Dies setzt voraus, dass x
und xc
für Dateinamen aufgerufen werden können; alternativ können Sie zuerst den Inhalt lesen und diesen als String an die Funktionen übergeben.
Sie könnten ein Diktat verwenden, um eine Erweiterung zu speichern - & gt; Funktionszuordnung:
%Vor%Dann erstellen Sie eine rekursive Funktion, die ein einzelnes Verzeichnis übernimmt, die Liste der Dateien in diesem Verzeichnis abruft und die Erweiterung jeder Datei festlegt:
%Vor%Nun müssen Sie in dieser for-Schleife bestimmen, ob der Eintrag eine Datei oder ein Verzeichnis ist und die richtige Aktion ausführen:
%Vor%Dies sollte für das funktionieren, was Sie tun möchten.
Haftungsausschluss - kann nicht versprechen, dass dies alles Python ist. Es ist meistens psuedocode mit Python-ähnlicher Syntax. Sie sollten in der Lage sein, die Idee zu bekommen, was zu tun ist, aber.
Tags und Links python