我正在用Python 2.7编写一个脚本。
它需要能够访问Windows中当前用户配置文件的任何人。
这是我目前拥有的变量和功能:
import os
desired_paths = os.path.expanduser('HOME'\"My Documents")
我确实怀疑这个expanduser
会起作用。我试图在Python中寻找Windows Env变量,希望找到一个列表并知道将它转换为什么。要么这样的工具不存在,要么我只是没有使用正确的搜索术语,因为我还是很新的学习。
答案 0 :(得分:13)
您可以通过os.environ
mapping:
import os
print(os.environ['USERPROFILE'])
这适用于Windows。对于另一个操作系统,您需要适当的环境变量。
此外,在Python中连接字符串的方法是使用+
符号,所以:
os.path.expanduser('HOME'\"My Documents")
^^^^^^^^^^^^^^^^^^^^^
应该是别的东西。但要连接路径,你应该更加小心,并且可能想要使用类似的东西:
os.sep.join(<your path parts>)
# or
os.path.join(<your path parts>)
(两者之间略有区别)
如果您想要当前用户的My Documents目录,可以尝试以下方法:
docs = os.path.join(os.environ['USERPROFILE'], "My Documents")
或者,使用expanduser:
docs = os.path.expanduser(os.sep.join(["~","My Documents"]))
最后,要查看设置了哪些环境变量,您可以执行以下操作:
print(os.environ.keys())
(参考查找设置环境变量的列表)
答案 1 :(得分:2)
使用~
前往os.path.expanduser
似乎比使用'HOME'
更可靠。