Angenommen, ich einen Verzeichnisbaum wie diese:Liste aller Dateien in einem Unterverzeichnis von einem gegebenen Startverzeichnis
a/
├── b
│ ├── d.png
│ └── e
│ └── f.png
└── c.png
Meine gewünschte Ausgabe ist: wenn ich nach Dateien in a/b/
suchen möge: b/d.png
& b/e/f.png
und bei a/
: a/c.png
a/b/d.png
a/b/e/f.png
Ich weiß, wie man alle Dateien in einem Unterverzeichnis mit os.walk auflistet und ich habe viel nach einer ähnlichen Situation wie meiner gesucht, aber ich habe keine gefunden.
Hier ist mein letzter Versuch:
path = "a/b"
pathBase = os.path.basename(path)
for p, dirs, files in os.walk(path):
for file in files:
print(os.path.join(p.replace(path, pathBase),file))
während dies mit a/b/
wie erwartet funktioniert es nicht mit a/
funktioniert.
Ausgabe für a
ist: c.png
b/d.png
b/e/f.png
was nicht wie erwartet ist.
"Es funktioniert nicht." bedeutet genau? –
Ich habe meinen ursprünglichen Post mit Ausgabe für 'a /' –