Ich habe den folgenden Code, wodurch ich alle Dateien in einem bestimmten Ordner (dieser Ordner enthält. TIF-Dateien) suchen möchte, dann speichern Sie diese Namen in einer TXT-Datei, die soweit funktioniert. Ich möchte jedoch nicht die Erweiterungen von allem, was in dem Ordner wäre.entfernen Erweiterung in Liste Python
Nach Kommentaren, vor allem dank ShadowRanger, änderte ich es zu den folgenden, die den gleichen Effekt produziert. Vielen Dank an alle !:
import os
f = [e.name for e in os.scandir(r'C:\\Users\\user\\Desktop\\FOLDER') if e.is_file()]
print('Saving file...')
def save_to_file(text):
for name in f:
with open('C:\\Users\\user\\Desktop\\FOLDER\\test5.txt', mode='wt', encoding='utf-8') as myfile:
myfile.write('\n'.join(text))
myfile.write('\n')
save_to_file(f)
Side- Hinweis: Warum benutzen Sie 'os.walk', wenn die Schleife nach der ersten Schleife unterbrochen ist? Warum ersetzen Sie nicht einfach loop durch 'f = [x für x in os.listdir (r'C: \ Benutzer \ Benutzername \ Desktop \ FOLDER ') wenn os.path.isfile (os.path.join (r'C: \ Users \ Benutzername \ Desktop \ FOLDER ', x))] ', oder wenn Sie auf 3.5+ sind, verwenden Sie' os.scandir', um die Datei 'stat' zu speichern,' f = [e.name für e in os .scandir (r'C: \ Benutzer \ Benutzername \ Desktop \ FOLDER ') wenn e.is_file()] '? – ShadowRanger
Nicht im Zusammenhang mit Ihrer Frage (Antworten bereits unten), aber Sie sollten Datei zuerst öffnen und dann starten Schleife statt Datei N öffnen/schließen in der Schleife. –
Danke Jungs. Ich bin ziemlich neu in Python, also bin ich es noch nicht gewohnt, Pythonic zu schreiben ... aber dieses Forum ist wirklich hilfreich :). Ich werde versuchen, Ihre Kommentare zu implementieren! – Naj