【发布时间】:2020-08-10 20:26:36
【问题描述】:
Python如何在不参考CMD命令echo %SystemRoot%的情况下找到Windows系统根目录?
【问题讨论】:
-
你试过
import os; os.path.expandvars("%SystemRoot%")吗?
标签: python windows cmd system root
Python如何在不参考CMD命令echo %SystemRoot%的情况下找到Windows系统根目录?
【问题讨论】:
import os; os.path.expandvars("%SystemRoot%")吗?
标签: python windows cmd system root
使用 Python 操作系统模块。
# Get environment variables
sr = os.getenv('SystemRoot')
sr = os.environ.get('SystemRoot')
https://able.bio/rhett/how-to-set-and-get-environment-variables-in-python--274rgt5
要查看 os 模块还能做什么,请使用:
dir(os)
要查看项目的详细信息,请使用:
print(os.getenv.__doc__)
【讨论】:
os.environ['SystemRoot'],如果未定义环境变量,则会引发KeyError。也许错误可以处理,缺少“%SystemRoot%”可以通过使用ctypes调用GetSystemDirectoryW来处理。 OTOH,如果未定义环境变量,os.environ.get 将返回 None。如果代码没有检查这个标记值,那么稍后当脚本尝试将结果用作字符串时,它只会得到一个异常。我知道链接页面解释了这些返回值,但它太基本了,不能从答案中省略。