Python os.path Modul
Python OS Datei-/Verzeichnismethoden
Das os.path-Modul wird hauptsächlich verwendet, um Dateiattribute abzurufen.
Im Folgenden sind mehrere häufig verwendete Methoden des os.path-Moduls aufgeführt:
| Methode | Beschreibung |
|---|---|
| os.path.abspath(path) | Gibt den absoluten Pfad zurück |
| os.path.basename(path) | Gibt den Dateinamen zurück |
| os.path.commonprefix(list) | Gibt den längsten gemeinsamen Pfad zurück, den alle Pfade in einer Liste (mehrere Pfade) gemeinsam haben |
| os.path.dirname(path) | Gibt den Dateipfad zurück |
| os.path.exists(path) | Wenn der Pfad existiert, wird True zurückgegeben; wenn der Pfad nicht existiert oder defekt ist, wird False zurückgegeben. |
| os.path.lexists(path) | Gibt True zurück, wenn der Pfad existiert, und gibt auch True zurück, wenn der Pfad defekt ist |
| os.path.expanduser(path) | Wandelt das in path enthaltene "~"~und~userin das Benutzerverzeichnis um |
| os.path.expandvars(path) | Ersetzt gemäß den Werten der Umgebungsvariablenpathenthalten in$nameund${name} |
| os.path.getatime(path) | Gibt die letzte Zugriffszeit zurück (Gleitkommasekunden) |
| os.path.getmtime(path) | Gibt die letzte Änderungszeit der Datei zurück |
| os.path.getctime(path) | Gibt die Erstellungszeit des Dateipfads zurück |
| os.path.getsize(path) | Gibt die Dateigröße zurück oder gibt einen Fehler zurück, wenn die Datei nicht existiert |
| os.path.isabs(path) | Bestimmt, ob es sich um einen absoluten Pfad handelt |
| os.path.isfile(path) | Bestimmt, ob der Pfad eine Datei ist |
| os.path.isdir(path) | Bestimmt, ob der Pfad ein Verzeichnis ist |
| os.path.islink(path) | Bestimmt, ob der Pfad ein Link ist |
| os.path.ismount(path) | Bestimmt, ob der Pfad ein Einhängepunkt ist |
| os.path.join(path1[, path2[, ...]]) | Kombiniert ein Verzeichnis und einen Dateinamen zu einem Pfad |
| os.path.normcase(path) | Wandelt die Groß-/Kleinschreibung und Schrägstriche von path um |
| os.path.normpath(path) | Normalisiert die Zeichenkettenform des Pfads |
| os.path.realpath(path) | Gibt den realen Pfad von path zurück |
| os.path.relpath(path[, start]) | Berechnet den relativen Pfad ausgehend von start |
| os.path.samefile(path1, path2) | Bestimmt, ob Verzeichnisse oder Dateien identisch sind |
| os.path.sameopenfile(fp1, fp2) | Bestimmt, ob fp1 und fp2 auf dieselbe Datei verweisen |
| os.path.samestat(stat1, stat2) | Bestimmt, ob die stat-Tupel stat1 und stat2 auf dieselbe Datei verweisen |
| os.path.split(path) | Teilt den Pfad in dirname und basename auf und gibt ein Tupel zurück |
| os.path.splitdrive(path) | Wird im Allgemeinen unter Windows verwendet und gibt ein Tupel aus Laufwerksnamen und Pfad zurück |
| os.path.splitext(path) | Teilt den Pfad auf und gibt ein Tupel aus Pfadnamen und Dateierweiterung zurück |
| os.path.splitunc(path) | Teilt den Pfad in Einhängepunkt und Datei auf |
| os.path.walk(path, visit, arg) | Durchläuft den Pfad und ruft die Funktion visit für jedes betretene Verzeichnis auf. Die Funktion visit muss 3 Parameter haben (arg, dirname, names); dirname steht für den Verzeichnisnamen des aktuellen Verzeichnisses, names steht für alle Dateinamen unter dem aktuellen Verzeichnis, und arg ist der dritte Parameter von walk. |
| os.path.supports_unicode_filenames | Legt fest, ob Unicode-Pfadnamen unterstützt werden |
Beispiel
Das folgende Beispiel demonstriert die Verwendung der os.path-bezogenen Methoden:
Beispiel
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os
print( os.path.basename('/root/example.txt') ) # Gibt den Dateinamen zurück
print( os.path.dirname('/root/example.txt') ) # Gibt den Verzeichnispfad zurück
print( os.path.split('/root/example.txt') ) # Teilt Dateinamen und Pfad auf
print( os.path.join('root','test','example.txt') ) # Kombiniert ein Verzeichnis und einen Dateinamen zu einem Pfad
Die Ausführung des obigen Programms gibt aus:
example.txt
/root
('/root', 'example.txt')
root/test/example.txt
Das folgende Beispiel gibt dateibezogene Informationen aus.
Beispiel
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os
import time
file='/root/example.txt' # Dateipfad
print( os.path.getatime(file) ) # Gibt die letzte Zugriffszeit aus
print( os.path.getctime(file) ) # Gibt die Erstellungszeit der Datei aus
print( os.path.getmtime(file) ) # Letzte Änderungszeit ausgeben
print( time.gmtime(os.path.getmtime(file)) ) # Letzte Änderungszeit in struct_time-Form ausgeben
print( os.path.getsize(file) ) # Dateigröße ausgeben (in Bytes)
print( os.path.abspath(file) ) # Absoluten Pfad ausgeben
print( os.path.normpath(file) ) # Pfad-Zeichenfolgenform normalisieren
Die Ausführung des obigen Programms gibt aus:
1539052805.5735736 1539052805.5775735 1539052805.5735736 time.struct_time(tm_year=2018, tm_mon=10, tm_mday=9, tm_hour=2, tm_min=40, tm_sec=5, tm_wday=1, tm_yday=282, tm_isdst=0) 7 /root/example.txt /root/example.txtWeitere Erweiterungen