Windows11下PyCharm中终端可访问环境变量但脚本无法读取的问题
PyCharm无法读取PowerShell临时环境变量的解决办法
你在PowerShell中通过$env:APP_ID = "12345"设置的是临时环境变量,这类变量仅在当前PowerShell进程及其子进程中生效。PyCharm作为独立启动的进程,并不属于该PowerShell进程的子进程,因此无法读取到这个变量。而终端中直接执行python main.py能正常获取,是因为终端本身就是该PowerShell进程的子进程,继承了环境变量。
以下是几种解决办法:
从设置变量的PowerShell启动PyCharm
在已经设置好APP_ID的PowerShell窗口中,直接运行PyCharm的启动程序(例如& "C:\Program Files\JetBrains\PyCharm 2024.1\bin\pycharm64.exe"),此时PyCharm作为PowerShell的子进程,会继承该临时环境变量。在PyCharm的运行配置中添加环境变量
- 点击PyCharm右上角运行按钮旁的下拉菜单,选择Edit Configurations
- 在配置窗口中找到Environment variables,点击右侧的文件夹图标
- 在弹窗里点击
+,输入变量名APP_ID和对应值12345,保存后重新运行脚本即可读取到变量。
设置系统/用户级永久环境变量
如果需要长期使用该变量,可在Windows系统中配置:- 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」
- 在「用户变量」或「系统变量」区域添加
APP_ID=12345 - 重启PyCharm,进程会重新读取系统环境变量,之后运行脚本就能正常获取。
内容的提问来源于stack exchange,提问作者PedroSantos
相关产品推荐
相关产品推荐

