python - 在 Windows 上的 Python 中获取和设置环境变量

标签 python python-3.x windows environment-variables

我正在尝试设置一个 env 变量,我希望它可以从另一个 Windows shell(已经打开)访问:

我试过了:

os.environ['start'] = 'test'

然后在 Windows cmd 中: env.exe | findstr 'start' 不返回任何内容。变量“开始”不存在。

然后我尝试:
subprocess.call(['setx.exe', 'start', 'test'])
SUCCESS: Specified value was saved

环境.exe | findstr 'start' 仍然不返回任何内容。

如何从 Windows shell 获取此变量?
使用 Windows 10 和 python 3。
谢谢!

最佳答案

您必须从 Python 代码中调用 Windows SETX 才能从代码中保存环境值

os.system("SETX {0} {1} /M".format("start", "test"))

应该做的伎俩。不要忘记以管理员身份运行脚本。为了让您的命令提示符看到更改,请确保关闭它并打开一个新的命令提示符,然后尝试使用 env.exe 查找您的环境值

关于python - 在 Windows 上的 Python 中获取和设置环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61757061/

相关文章:

python - 在Python中迭代MySQL时出现问题

python - 为什么这个使用 Python f-string 的打印语句输出双括号?

android - 在安卓上写python代码

python - 将父类(super class)实例转换为子类实例

python - 根据索引快速重新创建 python 字符串

c++ - Win32 不一致的 CreateWindowEx 调用

windows - 寻找这些 Linux bash 命令的等效 Windows 批处理命令

Java在Windows中访问 "Video Controller"

python - 列表理解、映射和 numpy.vectorize 性能

mysql - libpython3.6-dev、libpython3.6 和 mysqlclient 未在 ubuntu 18.04 上安装