我正在使用pyenv的虚拟环境,虽然我已经加载了环境变量,但我无法在Python中访问它们:
(venv) ➜ which python
/home/gonczor/.pyenv/versions/3.9.6/envs/venv/bin/python
(venv) ➜ echo $DEBUG
(venv) ➜ source .env
(venv) ➜ echo $DEBUG
True
(venv) ➜ python
Python 3.9.6 (default, Aug 15 2021, 19:46:48)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.environ["DEBUG"]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/gonczor/.pyenv/versions/3.9.6/lib/python3.9/os.py", line 679, in __getitem__
raise KeyError(key) from None
KeyError: 'DEBUG'
>>>
我不知道为什么,但似乎如果你没有在采购环境之前定义环境变量,这个问题就会出现。
试
export DEBUG=True
然后再试一次,问题就解决了。