【发布时间】:2019-05-23 01:26:30
【问题描述】:
我遇到了环境变量不匹配的问题。
我通过一个名为 NSSM 的程序在 Windows 10 上运行 Python 脚本。
在运行时,我执行以下操作:
- 从文本文件中加载参数
- 使用
os.environ.setdefault(name, value)将其内容放入环境中。 - 尝试使用
os.environ[name]加载环境变量
结果:我添加的任何变量都不显示出来。
我不确定为什么我添加的变量不可用。 你能告诉我我做错了什么吗?
首先,NSSM 使用来自 Windows HKLM 注册表的环境变量:source(见底部)。我不确定这是否是os.environ 看不到相关变量的原因。
【问题讨论】:
-
请提供重现问题的简化示例。我在 Python 2.7 和 3.7 中使用
os.environ.setdefault为当前进程和子进程添加环境变量没有问题,所以你在这里所做的事情一定有什么特别之处,或者对你正在尝试的事情有一些误解去做。
标签: python windows environment-variables python-os nssm