在python中设置环境变量时出错

时间:2013-09-26 05:19:55

标签: python environment-variables bloomberg

我正在尝试使用Bloomberg python API。我需要为此设置BLPAPI_ROOT环境变量。我补充说,

export BLPAPI_ROOT="/home/user/Downloads/blpapi_cpp_3.6.3.1"
export PATH=$PATH:$BLPAPI_ROOT

到我的.bashrc文件并运行源.bashrc。 现在,当我打开python shell并执行时,

print os.environ['BLPAPI_ROOT'] 

它给了我正确的输出。但是当这个在提供的setup.py中运行时,它会抛出一个

Traceback (most recent call last):
  File "setup.py", line 27, in <module>
    blpapiRoot = os.environ['BLPAPI_ROOT']
  File "/usr/lib/python2.7/UserDict.py", line 23, in __getitem__
    raise KeyError(key)
KeyError: 'BLPAPI_ROOT'

我在这里缺少什么?

系统: Ubuntu 12.04 Python 2.7

2 个答案:

答案 0 :(得分:1)

我会尝试以下方式使用它:

import os
try:
    os.environ['BLPAPI_ROOT'] = "/home/user/Downloads/blpapi_cpp_3.6.3.1"
except EnvironmentError:
    sys.exit(1)

答案 1 :(得分:1)

这是相当古老的,但对于任何搜索,你可以通过设置sudo以保持环境变量BLPAPI_ROOT,la keep environmental variables using sudo来解决这个问题。

sudo visudo

然后添加:

Defaults env_keep +="BLPAPI_ROOT"

您现在可以运行:

sudo python setup.py install

它应该可以正常工作。