Potrzebuję lokalizacji katalogu domowego aktualnie zalogowanego użytkownika. Obecnie w systemie Linux używam:
os.getenv("HOME")
Jednak to nie działa w systemie Windows. Jaki jest prawidłowy międzyplatformowy sposób, aby to zrobić?
python
cross-platform
home-directory
Nathan Osman
źródło
źródło
Odpowiedzi:
Chcesz użyć os.path.expanduser .
Zapewni to działanie na wszystkich platformach:
from os.path import expanduser home = expanduser("~")
Jeśli korzystasz z Pythona 3.5+ , możesz użyć pathlib.Path.home () :
from pathlib import Path home = str(Path.home())
źródło
pathlib.Path.home()
Jest dostępna począwszy od Python3.5 ( docs.python.org/3/library/pathlib.html#pathlib.Path.home )os.path.expanduser('~username')
. Prawdopodobnie dotyczy to tylko Linuksa.str
). Jeśli chcesz, aby ścieżka była po prostu ciągiem, obie robią to samo.Tutaj jest linux sposób cd .. jeśli chcesz go zamiast tego użyć uwaga: (jeśli jesteś w podkatalogu, przejdzie do katalogu)
źródło