在Python中读取环境变量

时间:2016-02-13 12:38:37

标签: python python-2.7 environment-variables

我在~/.profile中设置了一些环境变量:

SOMEVAR=/some/custom/path

已经source ~/.profile了。所以当我这样做时:

echo $SOMEVAR

打印正确的目录:

/some/custom/path

但是,当我尝试在Python脚本中读取此变量时,它会失败:

import os

print(os.environ["SOMEVAR"])

我明白了:

Traceback (most recent call last):
  File "environment_test.py", line 3, in <module>
    print os.environ["SOMEVAR"]
  File "/usr/lib64/python2.7/UserDict.py", line 23, in __getitem__
    raise KeyError(key)
KeyError: 'SOMEVAR'

那里有什么问题?

1 个答案:

答案 0 :(得分:4)

您不希望启动的进程看到您创建的所有垃圾(=变量)。因此,常规变量仅在您正在执行的shell中可见。

您必须导出变量:

export SOMEVAR=/some/custom/path