Linux终端与控制台的PYTHONPATH错误

2 投票
1 回答
616 浏览
提问于 2025-04-17 06:16

我在设置PYTHONPATH的时候遇到了一些麻烦。我在~/.bashrc文件里加了这一行:

export PYTHONPATH=$PYTHONPATH:/home/sayth/My_Programs/Python

然后我运行了 source ~/.bashrc

问题是,如果我在终端输入python,进入Python的交互模式,我可以毫无问题地从~/My_Programs/Python导入模块。

但是,如果我运行bpython、idle或者在ninja-ide里打开控制台,导入就失败了。

>>> import temperature
Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    import temperature
ImportError: No module named temperature
>>> 

我可以用sys.path.append(/home/sayth/My_Programs/Python)来让它工作,但我希望PYTHONPATH能在所有控制台里自动生效。该怎么做呢?

顺便说一下,我用的是ubuntu 11.10。

1 个回答

3

我猜想你可能没有从你运行 source ~/.bashrc 的那个终端启动 ninja-ide。新的环境变量只会影响那个终端的子进程。当然,注销再登录一次 可能 会解决问题,但如果你完全是在图形界面下操作(比如,你是点击按钮来启动 ninja-ide),那么你可能需要花更多的力气来设置环境变量。具体怎么做,取决于你使用的图形环境是什么。

撰写回答