微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

vscode/Python |无法访问环境变量

如何解决vscode/Python |无法访问环境变量

所以基本上我的问题是我不知道为什么我无法访问我在 .env 文件中设置的环境变量。我很确定我已经正确设置了它,因为 AEPL 产生了正确的输出,但是当我使用我的终端 (Git-bash) 或代码运行器时,它们无法访问环境变量,只是吐出一个错误。我在网上做了很多搜索,但对于我的生活,我无法弄清楚为什么它不起作用。我确定有一些简单的修复方法,但我不知何故丢失了......但如果有人能弄清楚为什么它不起作用,请告诉我。提前致谢!


文件结构

cwd/
    .vscode/
        settings.json
    env/
        Lib/
        Scripts/
        .env
    testenv.py

settings.json

{
    "python.testing.promptToConfigure": false,"python.testing.pytestEnabled": false,"python.testing.unittestEnabled": false,"python.testing.nosetestsEnabled": false,"python.pythonPath": "${workspaceFolder}\\env\\Scripts\\python.exe",// Python 3.8.2
    "python.envFile": "${workspaceFolder}\\env\\.env","python.formatting.provider": "autopep8","editor.formatOnSave": true,"python.linting.enabled": true,"code-runner.executorMap": {
        "python": "$pythonPath -u $fullFileName"
    },"code-runner.clearPrevIoUsOutput": true,"code-runner.showExecutionMessage": true
} 

.env

TEST = "test"

testenv.py

import os
print(os.getenv('TEST'))
print("==========")
print(os.environ['TEST'])

代码运行器/集成终端输出

os.getenv: None
==========
Traceback (most recent call last):
  File "c:\test\testenv.py",line 4,in <module>
    print(f"os.environ: {os.environ['TEST']}")
  File "c:\python38\lib\os.py",line 675,in __getitem__
    raise KeyError(key) from None
KeyError: 'TEST'

$ py testenv.py
os.getenv: None
==========
Traceback (most recent call last):
  File "testenv.py",in __getitem__
    raise KeyError(key) from None
KeyError: 'TEST'

AEREPL 输出

Print Output:
os.getenv: test
==========
os.environ: test
Variables:
{}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。