Verzeichnis aus Pfad in Python extrahieren

Sidrah Abdullah 30 Januar 2023
  1. Unterschiede im Dateipfad in verschiedenen Betriebssystemen
  2. Verwenden Sie os.path.basename, um den Dateinamen aus dem Dateipfad in Python zu finden
  3. Verwenden Sie os.path.splittext, um den Dateinamen aus dem Dateipfad in Python zu finden
  4. Verwenden Sie os.path.dirname, um den Verzeichnisnamen aus dem Dateipfad in Python zu finden
  5. Verwenden Sie das pathlib-Modul, um den Verzeichnisnamen in Python zu extrahieren
  6. Verwenden Sie os.path.abspath, um den Verzeichnisnamen aus dem Dateipfad in Python zu finden
Verzeichnis aus Pfad in Python extrahieren

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.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

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.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

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:

Verwenden Sie os.path.dirname, um den Verzeichnisnamen aus dem Dateipfad in Python zu finden

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:

Verwenden Sie das pathlib-Modul, um den Verzeichnisnamen in Python zu extrahieren

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 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

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:

Verwenden Sie os.path.abspath, um den Verzeichnisnamen aus dem Dateipfad in Python zu finden

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

Verwandter Artikel - Python Path