pythonpython-3.xgetenv

Updated environment variable but os.getenv() keeps returning None


I can't seem to get my code to respond to custom environment variables so I wrote a piece of code to test it. os.getenv is not pulling the environment variables that I've set in BASH into my Python code.

$ FRUSTRATION="PYTHON!!"
$ echo $FRUSTRATION
PYTHON!!
$ ipython
In [1]: import os

In [2]: very_frustrated = os.getenv("FRUSTRATION")

In [3]: print(very_frustrated)
None

Solution

  • Works for me:

    :: 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'
    >>>
    

    My guess is that you either forgot to export the variable, or you spelled the variable wrong.