如果windows用户目录在Python中移动到其他驱动器,如何返回该目录?

如果windows用户目录在Python中移动到其他驱动器,如何返回该目录?,python,python-3.x,windows,Python,Python 3.x,Windows,对Python来说仍然很陌生。 在Windows中使用Python 3.7 我想知道一种使用Python查找windows用户目录的方法,例如使用支持的windows方法将“下载”移动到辅助驱动器 如所述 我不喜欢使用符号链接,尽管这会绕过这个问题 目前我使用的是 os.path.expanduser('~/Downloads') 这将返回默认的用户文件夹,例如C:/Users/user/ 然后是提到的文件夹C:/Users/user/downloads,而不是链接到用户定义的默认文件夹进行

对Python来说仍然很陌生。 在Windows中使用Python 3.7

我想知道一种使用Python查找windows用户目录的方法,例如使用支持的windows方法将“下载”移动到辅助驱动器

如所述

我不喜欢使用符号链接,尽管这会绕过这个问题

目前我使用的是

os.path.expanduser('~/Downloads')
这将返回默认的用户文件夹,例如
C:/Users/user/
然后是提到的文件夹
C:/Users/user/downloads
,而不是链接到用户定义的默认文件夹进行下载,在这种情况下,可以说
D:/user/downloads


您能告诉我正确的方法吗?

Windows将这些路径存储在环境变量中。您应该能够使用例如
os.getenv('HOMEPATH')
来访问Python中的内容。如果它不在变量中,您可以在Windows注册表中找到它。您可以使用标准库中的
winreg
模块访问它(当然,仅限Windows发行版)。

Windows将这些路径存储在环境变量中。您应该能够使用例如
os.getenv('HOMEPATH')
来访问Python中的内容。如果它不在变量中,您可以在Windows注册表中找到它。您可以使用标准库中的
winreg
模块访问它(当然,仅限Windows发行版)。

您尝试过使用直接路径名吗?您不应该使用
%NAMES%
来支持本地化吗?我建立了一个解决方法,手动搜索两个“用户文件夹”对于windows,其他操作系统默认为
os.path.expanduser()
。我喜欢编写可重用函数“库”作为参考,所以更喜欢一种更灵活的方法。似乎有一种更完整的方法涉及使用winreg库,使用文件夹的GUID(KNOWNFOLDERID)从注册表中获取它。我只是希望有一个更简单的方法存在。我在重新表述了几次问题后发现了它。关于Davis的
%NAMES%
评论,直接访问
%HOMEPATH%
会提供一个更简单的解决方案,但我不知道有什么方法可以这样做。你试过使用直接路径名吗?你不应该使用
%NAMES%
进行本地化吗支持吗?我构建了一个变通方法,手动搜索windows的“用户文件夹”,并默认为其他操作系统的
os.path.expanduser()
。我喜欢编写可重用函数“库”作为参考,所以更喜欢一种更灵活的方法。似乎有一种更完整的方法涉及使用winreg库,使用文件夹的GUID(KNOWNFOLDERID)从注册表中获取它。我只是希望有一个更简单的方法存在。在重新表述了几次问题后,我在找到了。关于戴维斯的
%NAMES%
评论,直接访问
%HOMEPATH%
将提供一个更简单的解决方案,但我不知道有什么方法可以做到这一点。
HOMEPATH=os.getenv('HOMEPATH')HOMEPATH=os.path.realpath(HOMEPATH+'/Downloads'))
产生了所需的结果。谢谢。
homepath=os.getenv('homepath')homepath=os.path.realpath(homepath+'/Downloads')
生成了所需的结果。非常感谢。