前言
當我們導入一個模塊時: import xxx ,默認情況下python解釋器會搜索當前目錄、已安裝的內置模塊和第三方模塊。
搜索路徑存放在sys模塊的path中。【即默認搜索路徑可以通過sys.path打印查看】
sys.path.append()
sys.path是一個列表 list ,它里面包含了已經添加到系統的環境變量路徑。
當我們要添加自己的引用模塊搜索目錄時,可以通過列表 list 的 append()方法;
sys.path.append()
對於需要引用的模塊和需要執行的腳本文件不在同一個目錄時,可以按照如下形式來添加路徑:
【例如:
①導入的XX包在另一個項目文件中,在自己寫的程序中需要用到XX包。
②所以我們在運行自己寫的程序時,首先加載導入的XX包,加載的時候python解釋器會去sys.path默認搜索路徑去搜索。
③如果通過sys.path中的路徑可以搜索到XX包,然后加載。
④如果無法通過sys.path中的路徑搜索到XX包,即說明自己的程序中引用的XX包,與自己程序腳本所在目錄不在同一個路徑。(無法在自己的程序腳本中根據默認搜索路徑查找到XX包)
⑤然后我們就需要將XX包的搜索路徑添加到自己程序腳本的默認搜索路徑中,重新運行自己的程序腳本,先搜索XX包在家載XX包。
】
import sys sys.path.append(’需要引用模塊的地址')
# sys.path.append("..") # 這代表添加當前路徑的上一級目錄
【注意】:這種方法是運行時修改,腳本運行后就會失效。
運行結果:

sys.path.append('..')括號里這兩個點是什么意思?
這是目錄的意思,即代表上一級目錄。
通過這種方式,python程序會在上一級查找相應的其他python包或者文件。
sys.path.append('..\..')還有類似的sys.path.append('../..') 就是代表當前位置得上兩級的目錄地址。
改變當前python腳本的默認搜索路徑的第二種方式
把路徑添加到系統的環境變量,或把該路徑的文件夾放進已經添加到系統環境變量的路徑內。
環境變量的內容會自動添加到模塊搜索路徑中。
sys模塊包含了與python解釋器和它的環境有關的函數;可以通過dir(sys)來查看方法和成員屬性。
下面的兩個方法可以將模塊路徑加到當前模塊掃描的路徑里:
sys.path.append('你的模塊的名稱') sys.path.insert(0,'模塊的名稱')
永久添加路徑到sys.path中,方式有三。
如下:
1)將寫好的py文件放到已經添加到系統環境變量的目錄下;
2) 在 /usr/lib/python2.6/site-packages 下面新建一個.pth 文件(以pth作為后綴名);將模塊的路徑寫進去,一行一個路徑,如: vim pythonmodule.pth
/home/liu/shell/config
/home/liu/shell/base
3) 使用PYTHONPATH環境變量
export PYTHONPATH=$PYTHONPATH:/home/liu/shell/config
