Verzeichnis aus Pfad in Python extrahieren
- Unterschiede im Dateipfad in verschiedenen Betriebssystemen
-
Verwenden Sie
os.path.basename
, um den Dateinamen aus dem Dateipfad in Python zu finden -
Verwenden Sie
os.path.splittext
, um den Dateinamen aus dem Dateipfad in Python zu finden -
Verwenden Sie
os.path.dirname
, um den Verzeichnisnamen aus dem Dateipfad in Python zu finden -
Verwenden Sie das
pathlib
-Modul, um den Verzeichnisnamen in Python zu extrahieren -
Verwenden Sie
os.path.abspath
, um den Verzeichnisnamen aus dem Dateipfad in Python zu finden
Dateipfade sind eindeutige Zeichenketten, die den Speicherort einer Datei in einem System oder Verzeichnis darstellen. Manchmal müssen Sie möglicherweise Teile oder Chunks aus dem Dateipfad abrufen oder extrahieren.
Es gibt mehrere Möglichkeiten, wie Sie Teile aus dem Dateipfad in Python extrahieren können.
Unterschiede im Dateipfad in verschiedenen Betriebssystemen
Wir verwenden den Schrägstrich /
in der Linux-Verzeichnisstruktur (einschließlich MAC), während wir unter Windows den Rückwärtsschrägstrich \
als Trennzeichen verwenden.
Um zu prüfen, welches Trennzeichen Ihr System verwendet, verwenden Sie os.sep
oder os.path.sep
. Es wird das von Ihrem System verwendete Pfadtrennzeichen zurückgegeben.
Verwenden Sie os.path.basename
, um den Dateinamen aus dem Dateipfad in Python zu finden
Der erste und einfachste Weg, einen Teil des Dateipfads in Python zu extrahieren, ist die Verwendung der Funktion os.path.basename()
.
Diese Funktion gibt den Dateinamen aus dem Dateipfad zusammen mit seiner Erweiterung zurück. Außerdem funktioniert es für alle Python-Versionen.
import os
fpath = "c:\Project\input.txt"
os.path.basename(fpath)
Ausgabe:
Verwenden Sie os.path.splittext
, um den Dateinamen aus dem Dateipfad in Python zu finden
Wenn Sie nur den Dateinamen aus dem Dateipfad und nicht seine Erweiterung extrahieren möchten, verwenden Sie die Funktion os.path.splittext()
. Diese Funktion gibt nur den Dateinamen zurück.
Außerdem fügen Sie mit dieser Funktion einen Index 0
hinzu, um die gewünschte Ausgabe zu erhalten. Die Funktion splittext()
teilt den Dateipfad in ein Array auf. Der Index 0
steht also für den Dateinamen und der Index 1
für die Erweiterung.
import os
fpath = "c:\Project\input.txt"
fname = os.path.splitext(fpath)[0]
Ausgabe:
Verwenden Sie os.path.dirname
, um den Verzeichnisnamen aus dem Dateipfad in Python zu finden
Die Funktion os.path.dirname()
wird verwendet, um den Verzeichnisnamen aus dem Pfad zu extrahieren. Diese Funktion gibt den Verzeichnisnamen als Zeichenfolge in der Python-Konsole zurück.
import os
fpath = "c:\Project\input.txt"
dirname = os.path.dirname(filepath)
print(dirname)
Ausgabe:
Diese Funktion gibt den vollständigen Pfad zum übergeordneten Verzeichnis zurück.
Verwenden Sie das pathlib
-Modul, um den Verzeichnisnamen in Python zu extrahieren
Eine andere Möglichkeit, das Verzeichnis aus dem Dateipfad zu erhalten, ist die Verwendung des Moduls pathlib
. Dies ist speziell in den Python-Versionen 3.4+ verfügbar.
Die Funktion nimmt ein Argument, den Dateipfad, und kann je nach abgerufenem Element verschiedene Ausgaben zurückgeben. Lassen Sie uns zuerst die Datei zusammen mit ihrem Pfad importieren.
from pathlib import Path
p = Path("C:\\Program Files\\Internet Explorer\\iexplore.exe")
Führen Sie den folgenden Code aus, um die übergeordneten Verzeichnisse zu überprüfen:
str(p.parent)
Ausgabe:
Um das Verzeichnis und den Dateinamen als Teile abzurufen, verwenden Sie die Teilfunktion des Pfadmoduls. Beispielsweise:
P.parts
Sie werden so etwas bekommen.
Verwenden Sie os.path.abspath
, um den Verzeichnisnamen aus dem Dateipfad in Python zu finden
Das OS-Modul bietet auch die Funktionalität, ein Verzeichnis aus dem Dateipfad zu extrahieren.
Diese Funktion akzeptiert zwei verschiedene Argumente: Backslash und Punktzeichen. Der umgekehrte Schrägstrich gibt das Stammverzeichnis zurück, und der Punkt gibt das aktuelle Verzeichnis zurück.
import os
directory = os.path.abspath("\\")
print(directory)
Ausgabe:
Hier ist der Code, um den absoluten Pfad zu erhalten:
directory = os.path.abspath(".")
print(directory)
Ausgabe:
'C:\Users\User\Desktop'
In diesem Tutorial wurden mehrere Funktionen und Module zum Aufteilen des Dateipfads in Python betrachtet. Wir haben auch gelernt, wie man in Python mit den Modulen OS
und Path
einen Namen oder ein Verzeichnis aus dem Dateipfad extrahiert.
Verwandter Artikel - Python Directory
- Python Get-Home-Verzeichnis
- Alle Dateien im Verzeichnis und Unterverzeichnissen in Python auflisten
- Behebung des Fehlers No Such File in Directory in Python
- Ausführen eines Befehls für jede Datei in einem Ordner in Python
- Zählen Sie die Anzahl der Dateien in einem Verzeichnis in Python