在Python中获取主目录的正确跨平台方式是什么?

2022-03-22 00:00:00 python cross-platform home-directory

问题描述

我需要获取当前登录用户的主目录位置。目前,我在Linux上使用的是:

os.getenv("HOME")
但是,这在Windows上不起作用。执行此操作的正确跨平台方式是什么?


解决方案

您要使用os.path.expanduser。
这将确保它可以在所有平台上运行:

from os.path import expanduser
home = expanduser("~")

如果您使用的是Python 3.5+,则可以使用pathlib.Path.home():

from pathlib import Path
home = str(Path.home())

相关文章