您的位置:首页 > 编程语言 > Python开发

Python环境变量PYTHONPATH设置和easy_install简单使用

2014-09-26 10:50 531 查看
1.把自己编写的python模块添加到PYTHONPATH上要想让python解释器找到自己编写的模块,则该模块必须PYTHONPATH上,否则在导入该模块时会出现找不到该模块的错误,因此必须把所需要的模块的路径添加到PYTHONPATH(一般情况下是把lib/python2.6/site-packages添加到PYTHONPATH)。具体做法如下:a. 假设所需要的python模块(或包)位于/home/lxc/software/program/pythonb. 把/home/lxc/software/program/python添加到PYTHONPATH,语法与shell里面的PATH一样:export PYTHONPATH=$PYTHONPATH:/home/lxc/software/program/python现在就可以使用getopt_exam.py模块了,示例如下:$python>>>import getopt_exam>>>getopt_examversion v1.0>>>注意:当第一次导入getopt_exam时,getopt_exam.py就会被编译为字节码,此时该目录下就会出现一个名为getopt_exam.pyc的文件,因为*.pyc格式比*.py格式导出的速度更快,如果更新了getopt_exam.py则必须把它之前被编译的字节码getopt_exam.pyc删除,否则在使用这个模块的时候就不会看到更新的部分,因为它是从第一次生成的getopt_exam.pyc里面导出来;我们必要对新的getopt_exam.py脚本编译成*.pyc文件或是直接把getopt_exam.pyc(第一次生成)删掉,python解释器会自动没有没有相应*.pyc的*.py文件生成相应的*.pyc文件(基本规则:当导入一个模块时,python解释器先把*.py文件编译成*.pyc,然后在从*.pyc里面导出)。
2.在python脚本里面使用那些不再PYTHONPATH上的第三方包或是自己编写的模块以使用/home/lxc/software/program/python/getopt_exam.py为例。$python>>>import sys>>>sys.path.append(“/home/lxc/software/program/python”)>>>import getopt_exam>>>getopt_exam.version()version v1.0>>>
3.使用easy_install来自动安装python包以安装networkx为例,把networkx安装到路面/home/lxc/software/program/python/site-packages下a.先将/home/lxc/software/program/python/site-packages添加到PYTHONPATH;export PYTHONPATH=$PYTHONPATH:/home/lxc/software/program/python/site-packagesb.安装版本号大于1.1的包easy_install-2.6 -d /home/lxc/software/program/python/site-packages "networkx>1.1"
4.使用EPD已经安装好的networkx包export PYTHONPATH=$PYTHONPATH:/home/lxc/software/INSTALL/epd-6.2-2-rh5-x86/lib/python2.6/site-packages
5.更新python包easy_install-2.6 -U -d /home/lxc/software/INSTALL/epd-6.2-2-rh5-x86/lib/python2.6/site-packages "networkx>1.1"完成之后在/home/lxc/software/INSTALL/epd-6.2-2-rh5-x86/lib/python2.6/site-packages目录下会出现一个文件夹networkx-1.4-py2.6.egg,不过现在还不能在EPD的命令行里面直接使用更新后的版本(networkx-1.4);要使用更新的版本,可以把以前安装的networkx直接删掉,或是”mv networkx networkx.bk”。注意/home/lxc/software/INSTALL/epd-6.2-2-rh5-x86/lib/python2.6/site-packages必须首先被添加到PYTHONPATH
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: