Wenn mehrere Verzeichnisse wie in einem ausführbaren Suchpfad verkettet werden müssen, gibt es ein os-abhängiges Trennzeichen. Für Windows ist es ';'
, Für Linux ist es ':'
. Gibt es eine Möglichkeit in Python zu ermitteln, auf welche Zeichen aufgeteilt werden soll?
In den Diskussionen zu dieser Frage Wie finde ich meinen python -Pfad mit Python heraus? wird vorgeschlagen, dass os.sep
werde es tun. Diese Antwort ist falsch, da sie das Trennzeichen für Komponenten eines Verzeichnisses oder Dateinamens ist und '\\'
Oder '/'
Entspricht.
Es ist os.pathsep
Machen Sie es etwas expliziter (Für python Neulinge wie ich)
import os
print(os.pathsep)
OK, es gibt also:
Die Ähnlichkeit der beiden Namen ist offenbar ein Grund für Verwirrung.
Dies ist ein Beispielpfad für Ihr Arbeitsverzeichnis/einen bestimmten Ordner -
import os
my = os.path.sep+ "testImages" + os.path.sep + "imageHidden.png"
print(my)
Ausgabe für Linux-
/home/*******/Desktop/folder/PlayWithPy/src/testImages/imageHidden.png
Ausgabe für Windows-
C:\\Users\\Administrator\\Desktop\\folder\\tests\\testImages\\imageHidden.png