Python 2.4不加载主目录包

时间:2011-08-15 17:38:59

标签: python linux

我正在尝试将Python软件包安装到我的主目录,因为我没有权限在系统范围内安装它。

包是PyProj,我正在尝试使用python setup.py install --home=~(使用Python 2.4.3)安装它,正如Python文档中所建议的那样。包成功编译并将自身复制到我认为正确的目录(安装期间出现目录~/lib64/python/pyproj)。

但是,当我加载Python并输入import pyproj时,我被告知ImportError: No module named pyproj

有关可能发生的事情的任何想法?

2 个答案:

答案 0 :(得分:4)

您需要设置PYTHONPATH告诉Python在哪里找到您本地安装的软件包。

例如:

[you@home]$ export PYTHONPATH="~/lib64/python"

或者,在解释器(或脚本)中执行此操作:

import sys, os
sys.path.append(os.path.expanduser("~/lib64/python")) 

有关Python如何找到已安装模块的详细信息,请参阅文档中的The Module search Path部分。

答案 1 :(得分:2)

~/lib64/python/pyproj不属于您的PYTHONPATH。根据您的需要,有两到三种方法。

第一种方法是直接修改模块中的路径,如果您只是从一个模块中使用它,那么它是合适的。如评论中所述,此方法不会对'〜'字符进行扩展。

import sys
sys.path.append('/home/username/lib64/python')
import pyproj

第二种方法是通过系统建议的任何方法将~/lib64/python/pyproj添加到系统的PYTHONPATH中。 .bash_profile中的一行显示如下。

export PYTHONPATH=$PYTHONPATH:~/lib64/python/pyproj

有关详细信息,请参阅Python Documentation