可以在终端中访问环境变量,但不能从脚本中访问

问题描述 投票:0回答:1

我在 Windows 11 中使用 Pycharm。 我正在使用

$env:APP_ID = "12345"

创建一个名为 APP_ID 的环境变量

当我跑步时

dir env
:我可以看到它。

但是运行这个简单的脚本却没有给我带来任何好处:

import os
print(os.environ.get("APP_ID"))

但是当我从终端(

python main.py
)运行脚本时,它给了我密钥 12345。

如果我将脚本更改为

print(os.environ)
并运行它,它就不在那里,但如果我再次从终端运行它,它就在那里。

python windows powershell environment-variables
1个回答
1
投票

这是您如何在 powershell 中设置变量的问题,而不是您如何在 Python 中检索变量的问题。根据 https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_environment_variables?view=powershell-7.4 --

在 PowerShell 中更改环境变量时,更改仅影响当前会话

要为系统设置变量,而不仅仅是单个会话,您应该使用:

[Environment]::SetEnvironmentVariable('APP_ID','12345')
© www.soinside.com 2019 - 2024. All rights reserved.