Verzeichnis- und Dateioperationen in Python meistern
Python Verzeichnis- und Dateiverwaltung
Entdecken Sie, wie Sie in Python effizient Verzeichnisse und Dateien erstellen, navigieren, auflisten, umbenennen und löschen – mit klaren, praxisnahen Beispielen.
Video: Python os-Modul
Python Verzeichnis
Wenn Ihr Projekt wächst, wird die Organisation von Code in gut strukturierte Ordner unerlässlich. Ein Verzeichnis – oder Ordner – ist ein Container für Dateien und Unterverzeichnisse, und Pythons os-Modul stellt robuste Werkzeuge zur Verwaltung bereit.
Aktuelles Verzeichnis ermitteln
Verwenden Sie os.getcwd(), um das aktuelle Arbeitsverzeichnis als String abzurufen. Wenn Sie eine Bytes-Darstellung benötigen, liefert os.getcwdb() diese.
import os
os.getcwd() # 'C:\\Program Files\\PyScripter'
os.getcwdb() # b'C:\\Program Files\\PyScripter'
Der doppelte Backslash deutet auf eine Escape-Sequenz hin. Die Verwendung von print() rendert den Pfad korrekt:
print(os.getcwd()) # C:\Program Files\PyScripter
Verzeichnis wechseln
Wechseln Sie das aktuelle Arbeitsverzeichnis mit os.chdir(pfad). Das pfad-Argument kann sowohl Vorwärts- als auch Backslashes verwenden; denken Sie nur daran, Backslashes zu escapen oder Raw Strings zu verwenden.
os.chdir('C:\\Python33')
print(os.getcwd()) # C:\Python33
Verzeichnisse und Dateien auflisten
Rufen Sie jede Datei und jedes Unterverzeichnis in einem Zielordner mit os.listdir(pfad) ab. Wird pfad weggelassen, arbeitet die Funktion auf dem aktuellen Arbeitsverzeichnis.
print(os.getcwd()) # C:\Python33
os.listdir() # ['DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'NEWS.txt', 'python.exe', 'pythonw.exe', 'README.txt', 'Scripts', 'tcl', 'Tools']
os.listdir('G:\\') # ['$RECYCLE.BIN', 'Movies', 'Music', 'Photos', 'Series', 'System Volume Information']
Neues Verzeichnis erstellen
Erstellen Sie einen Ordner mit os.mkdir(pfad). Wenn der Pfad relativ ist, erscheint das neue Verzeichnis im aktuellen Arbeitsverzeichnis.
os.mkdir('test')
print(os.listdir()) # ['test']
Verzeichnis oder Datei umbenennen
Die gleiche os.rename(quelle, ziel)-Funktion handhabt sowohl Dateien als auch Ordner. Geben Sie den alten Namen als quelle und den gewünschten neuen Namen als ziel an:
os.listdir() # ['test']
os.rename('test', 'neu_eins')
print(os.listdir()) # ['neu_eins']
Verzeichnis oder Datei entfernen
Löschen Sie eine Datei mit os.remove(pfad). Zum Entfernen eines leeren Ordners verwenden Sie os.rmdir(pfad):
os.listdir() # ['neu_eins', 'alt.txt']
os.remove('alt.txt')
print(os.listdir()) # ['neu_eins']
os.rmdir('neu_eins')
print(os.listdir()) # []
Hinweis: os.rmdir() funktioniert nur bei leeren Verzeichnissen.
Wenn Sie einen Ordner löschen müssen, der Dateien oder Unterordner enthält, ist die shutil.rmtree()-Funktion aus dem shutil-Modul der richtige Weg:
os.listdir() # ['test']
os.rmdir('test') # Traceback (most recent call last): ... OSError: [WinError 145] The directory is not empty: 'test'
import shutil
shutil.rmtree('test')
print(os.listdir()) # []
Python
- C++ Speicherverwaltung meistern: Experten-Einsatz von new und delete
- Python-Schlüsselwörter & Bezeichner: Reservierte Wörter & Benennungskonventionen meistern
- Python-Anweisungen, Einrückung & Kommentare: Klare Anleitung
- Python-Variablen, Konstanten & Literale – Umfassender Leitfaden
- Python-Typkonvertierung & Casting meistern: Umfassender Leitfaden
- Python I/O & Modul-Importe meistern: Praxisleitfaden
- Python Global, Local & Nonlocal Variablen verstehen
- Zahlen, Typkonvertierung und Mathematik in Python meistern
- Python-Fehler & eingebaute Exceptions meistern
- Aktuelles Datum und Uhrzeit in Python abrufen: Praktischer Leitfaden