os.getenv() продолжает возвращать None

Кажется, я не могу заставить свой код реагировать на пользовательские переменные среды, поэтому я написал фрагмент кода для его проверки. getenv не тянет переменные окружения, которые я установил в BASH, в мой код Python. Буду очень признателен за любую помощь, которую вы можете оказать.

$ FRUSTRATION="PYTHON!!"
$ echo FRUSTRATION
PYTHON!!
export FRUSTRATION
ipython
import os
very_frustrated = os.getenv("FRUSTRATION")
print(very_frustrated)
None

2 ответа

Решение

Работает для меня:

:: export FOO=boo
:: python
Python 2.7.10 (default, Jul 30 2016, 18:31:42)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.getenv('FOO')
'boo'
>>>

Я предполагаю, что вы либо забыли экспортировать переменную, либо неправильно написали переменную.

print os.environ

Сделайте это, чтобы увидеть, добавлена ​​ли в вашу систему переменная окружения или нет. Ваш код Python в порядке. Это проблема установки env var.

Другие вопросы по тегам