Ich muss den Speicherort des Home-Verzeichnisses des aktuell angemeldeten Benutzers ermitteln. Derzeit verwende ich unter Linux Folgendes:
os.getenv("HOME")
Dies funktioniert jedoch nicht unter Windows. Was ist der richtige plattformübergreifende Weg, um dies zu tun?
python
cross-platform
home-directory
Nathan Osman
quelle
quelle
Antworten:
Sie möchten os.path.expanduser verwenden .
Dadurch wird sichergestellt, dass es auf allen Plattformen funktioniert:
from os.path import expanduser home = expanduser("~")
Wenn Sie mit Python 3.5+ arbeiten , können Sie pathlib.Path.home () verwenden :
from pathlib import Path home = str(Path.home())
quelle
pathlib.Path.home()
ist ab Python3.5 verfügbar ( docs.python.org/3/library/pathlib.html#pathlib.Path.home )os.path.expanduser('~username')
. Gilt wahrscheinlich nur für Linux.str
). Wenn Sie den Pfad nur als Zeichenfolge verwenden möchten, tun beide dasselbe.Hier ist eine Linux-Weg-CD. Wenn Sie diese stattdessen verwenden müssen, beachten Sie: (Wenn Sie sich in einem Unterverzeichnis befinden, wird sie in das Verzeichnis übernommen.)
quelle