把自己编写的python模块添加到PYTHONPATH上
Python環境變量PYTHONPATH設置和easy_install簡單使用
?(2011-03-24 13:57:46) 轉載▼標簽:? 雜談? | 分類:?Python |
1.把自己編寫的python模塊添加到PYTHONPATH上
要想讓python解釋器找到自己編寫的模塊,則該模塊必須PYTHONPATH上,否則在導入該模塊時會出現找不到該模塊的錯誤,因此必須把所需要的模塊的路徑添加到PYTHONPATH(一般情況下是把lib/python2.6/site-packages添加到PYTHONPATH)。具體做法如下:
a.?假設所需要的python模塊(或包)位于/home/lxc/software/program/python
b.?把/home/lxc/software/program/python添加到PYTHONPATH,語法與shell里面的PATH一樣:
export?PYTHONPATH=$PYTHONPATH:/home/lxc/software/program/python
現在就可以使用getopt_exam.py模塊了,示例如下:
$python
>>>import getopt_exam
>>>getopt_exam
version 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-packages
b.安裝版本號大于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
轉載于:https://www.cnblogs.com/neubmiewang/p/6579616.html
總結
以上是生活随笔為你收集整理的把自己编写的python模块添加到PYTHONPATH上的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: poj 2892---Tunnel W
- 下一篇: Spring源码解析-核心类之XmlBe