Das Modul pathlib ersetzt das mühsame Zusammensetzen von Pfaden als Strings. Es funktioniert auf Linux, Windows und macOS gleich.
python
from pathlib import Path
ordner = Path('daten')
datei = ordner / 'kunden.csv' # Pfade mit / verbinden
datei.exists() # gibt es die Datei?
datei.is_file(), ordner.is_dir()
datei.name # 'kunden.csv'
datei.stem # 'kunden'
datei.suffix # '.csv'
datei.parent # Path('daten')
ordner.mkdir(parents=True, exist_ok=True) # Ordner anlegen
text = datei.read_text(encoding='utf-8') # ganze Datei lesen
datei.write_text('hallo', encoding='utf-8') # ganze Datei schreiben
for f in ordner.glob('*.csv'): # alle CSV-Dateien im Ordner
print(f.name)
Path.home() # Home-Verzeichnis
Path.cwd() # aktuelles Arbeitsverzeichnis
| Methode | Parameter |
|---|---|
mkdir(mode=0o777, parents=False, exist_ok=False) |
parents=True legt auch fehlende Zwischenordner an, exist_ok=True verhindert Fehler, wenn der Ordner schon existiert |
read_text(encoding=None), write_text(data, encoding=None) |
Gib encoding='utf-8' an |
glob(pattern), rglob(pattern) |
Muster wie *.csv. rglob sucht auch in Unterordnern |
iterdir() |
Alle Einträge eines Ordners |
unlink(missing_ok=False) |
Datei löschen |
rename(ziel) |
Verschieben oder umbenennen |