Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich relative Pfade in Python unabhängig vom aktuellen Arbeitsverzeichnis zuverlässig verwenden?

Wie kann ich relative Pfade in Python unabhängig vom aktuellen Arbeitsverzeichnis zuverlässig verwenden?

Barbara Streisand
Barbara StreisandOriginal
2024-12-04 22:23:12650Durchsuche

How Can I Use Relative Paths in Python Reliably Regardless of the Current Working Directory?

Relative Pfade in Python: Dateien verstehen

Viele Python-Skripte erfordern die Verwendung relativer Pfade für den Zugriff auf Dateien und Ressourcen. Beim Ausführen von Skripten aus dem aktuellen Arbeitsverzeichnis wird der angegebene Pfad jedoch möglicherweise anders als beabsichtigt interpretiert.

Problem: Wie können Sie relative Pfade relativ zum Speicherort des Skripts angeben, anstatt aktuelles Arbeitsverzeichnis?

Lösung:

Um den absoluten Pfad des Skripts zu bestimmen Verzeichnis verwenden Sie die Funktion os.path.dirname(__file__). Durch die Kombination mit dem gewünschten relativen Pfad erhalten Sie den absoluten Pfad zur Zieldatei oder zum Zielverzeichnis.

import os
dirname = os.path.dirname(__file__)
filename = os.path.join(dirname, 'relative/path/to/file/you/want')

Zusätzliche Überlegungen:

  • Datei Verfügbarkeit: __file__ ist im Allgemeinen zugänglich, wenn Skripte als Module ausgeführt werden, ist jedoch möglicherweise nicht verfügbar, wenn sie ausgeführt werden direkt als Hauptskript.
  • C-Erweiterungen: __file__ verhält sich bei C-Erweiterungen anders als bei reinen Python-Skripten.

Das obige ist der detaillierte Inhalt vonWie kann ich relative Pfade in Python unabhängig vom aktuellen Arbeitsverzeichnis zuverlässig verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn