Python os.getenv() 在设置 Windows 环境变量时返回 None

我设置了 config.py 文件并将我的 Windows 环境变量设置为带有我所有令牌的用户变量。但是当我运行我的文件时,它给出了一个错误,因为在检索我的令牌时 os.getenv() 是 None

consumer_key = os.getenv("CONSUMER_KEY")
consumer_secret = os.getenv("CONSUMER_SECRET")
access_token = os.getenv("ACCESS_TOKEN")
access_token_secret = os.getenv("ACCESS_TOKEN_SECRET")

在 Windows 终端中,我打印了这些变量中的每一个,它们都是正确的。我在这里缺少什么吗?任何帮助深表感谢!


慕婉清6462132
浏览 428回答 4
4回答

HUX布斯

所以这是一个问题,因为从另一个进程产生的进程继承了它的环境变量集。在这种情况下,需要重新启动正在使用的用于启动代码的 IDE。VS Code 的另一种选择是在指定的环境中启动项目。这可以通过将 env 选项添加到启动配置来完成:   {        "name": "Python: Current File (Integrated Terminal)",        "type": "python",        "request": "launch",        "program": "${file}",        "console": "integratedTerminal"        "env": {"VAR_NAME": "VAR_VALUE"                "VAR_NAME2": "VAR_VALUE2"}    },在这种情况下,VAR_NAME 和 VAR_NAME2 是环境变量名称。VAR_VALUE 和 VAR_VALUE2 将是分配给它们的字符串。

梵蒂冈之花

如果os.getenv()不起作用,您可以使用解耦。只需执行pip install python-decouple ,然后在代码中执行from decouple import config,然后您就可以执行以下操作:consumer_key = config('CONSUMER_KEY') consumer_secret = config('CONSUMER_SECRET') access_token = config('ACCESS_TOKEN') access_token_secret = config('ACCESS_TOKEN_SECRET')这对我有用。希望它也适用于您的情况。

慕森卡

重启了VSCode,还是不行。直到重新启动 VSCode,并关闭项目文件夹,然后重新打开它。

阿晨1998

我有完全相同的问题并重新启动计算机解决了问题
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python