Python 如何在Windows中更新环境变量

Python 如何在Windows中更新环境变量,python,windows,Python,Windows,要创建一个新的Windows环境变量,我进入控制面板>系统>高级系统设置>高级选项卡>环境变量,然后单击新建…按钮: 单击OK并创建NEW_变量后,我验证Python进程是否可读: import os value = os.getenv(`NEW_VARIABLE`) print value 其中打印: NEW_VALUE 退出Python会话并返回控制面板后,我使用相同的环境变量对话框删除新变量 有趣的是,如果现在我运行Python的print os.getenv('NEW_VARIA

要创建一个新的Windows环境变量,我进入控制面板>系统>高级系统设置>高级选项卡>环境变量,然后单击
新建…
按钮:

单击
OK
并创建
NEW_变量后,我验证Python进程是否可读:

import os
value = os.getenv(`NEW_VARIABLE`)
print value 
其中打印:

NEW_VALUE
退出Python会话并返回控制面板后,我使用相同的
环境变量
对话框删除
新变量

有趣的是,如果现在我运行Python的
print os.getenv('NEW_VARIABLE')
,它仍然会返回相同的
NEW_值,就像它仍然存在一样。

如何确保Python无法访问已删除的环境变量?

删除变量后是否重新启动了shell/cmd,想知道这里是否存在某种缓存。我不知道这是否真的很重要,但您是从同一控制台启动Python还是打开了新的cmd/idle/什么的?可能是应用程序继承了环境,而更改只适用于将来创建的进程……我使用PythonShell进行了尝试,在关闭/重新启动shell后,它可以正常工作。就像其他人说的,如果你使用cmd,你不关闭cmd太,它不会工作,因为它的cachedI解释了如何在你的评论工作。