在Python中宽闲,安裝第三方模塊,是通過(guò)包管理工具pip完成的握牧。
如果你正在使用Mac或Linux容诬,安裝pip本身這個(gè)步驟就可以跳過(guò)了。
如果你正在使用Windows沿腰,請(qǐng)參考安裝Python一節(jié)的內(nèi)容览徒,確保安裝時(shí)勾選了pip和Add python.exe to Path。
在命令提示符窗口下嘗試運(yùn)行pip颂龙,如果Windows提示未找到命令吱殉,可以重新運(yùn)行安裝程序添加pip。
注意:Mac或Linux上有可能并存Python 3.x和Python 2.x厘托,因此對(duì)應(yīng)的pip命令是pip3友雳。
例如,我們要安裝一個(gè)第三方庫(kù)——Python Imaging Library铅匹,這是Python下非常強(qiáng)大的處理圖像的工具庫(kù)押赊。不過(guò),PIL目前只支持到Python 2.7包斑,并且有年頭沒(méi)有更新了流礁,因此,基于PIL的Pillow項(xiàng)目開(kāi)發(fā)非陈薹幔活躍神帅,并且支持最新的Python 3。
一般來(lái)說(shuō)萌抵,第三方庫(kù)都會(huì)在Python官方的pypi.python.org網(wǎng)站注冊(cè)找御,要安裝一個(gè)第三方庫(kù),必須先知道該庫(kù)的名稱绍填,可以在官網(wǎng)或者pypi上搜索霎桅,比如Pillow的名稱叫Pillow,因此讨永,安裝Pillow的命令就是:
pip install Pillow
耐心等待下載并安裝后滔驶,就可以使用Pillow了。
且慢
安裝常用模塊
在使用Python時(shí)卿闹,我們經(jīng)常需要用到很多第三方庫(kù)揭糕,例如萝快,上面提到的Pillow,以及MySQL驅(qū)動(dòng)程序著角,Web框架Flask杠巡,科學(xué)計(jì)算Numpy等。用pip一個(gè)一個(gè)安裝費(fèi)時(shí)費(fèi)力雇寇,還需要考慮兼容性氢拥。我們推薦直接使用Anaconda,這是一個(gè)基于Python的數(shù)據(jù)處理和科學(xué)計(jì)算平臺(tái)锨侯,它已經(jīng)內(nèi)置了許多非常有用的第三方庫(kù)嫩海,我們裝上Anaconda,就相當(dāng)于把數(shù)十個(gè)第三方模塊自動(dòng)安裝好了囚痴,非常簡(jiǎn)單易用叁怪。
可以從Anaconda官網(wǎng)下載GUI安裝包,安裝包有500~600M深滚,所以需要耐心等待下載奕谭。網(wǎng)速慢的同學(xué)請(qǐng)移步國(guó)內(nèi)鏡像。下載后直接安裝痴荐,Anaconda會(huì)把系統(tǒng)Path中的python指向自己自帶的Python血柳,并且,Anaconda安裝的第三方模塊會(huì)安裝在Anaconda自己的路徑下生兆,不影響系統(tǒng)已安裝的Python目錄难捌。
安裝好Anaconda后,重新打開(kāi)命令行窗口鸦难,輸入python根吁,可以看到Anaconda的信息:
┌────────────────────────────────────────────────────────┐
│Command Prompt - python - □ x │
├────────────────────────────────────────────────────────┤
│Microsoft Windows [Version 10.0.0] │
│(c) 2015 Microsoft Corporation. All rights reserved. │
│ │
│C:\> python │
│Python 3.6.3 |Anaconda, Inc.| ... on win32 │
│Type "help", ... for more information. │
│>>> import numpy │
│>>> _ │
│ │
│ │
│ │
└────────────────────────────────────────────────────────┘
可以嘗試直接import numpy等已安裝的第三方模塊。
模塊搜索路徑
當(dāng)我們?cè)噲D加載一個(gè)模塊時(shí)合蔽,Python會(huì)在指定的路徑下搜索對(duì)應(yīng)的.py文件击敌,如果找不到,就會(huì)報(bào)錯(cuò):
>>> import mymodule
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named mymodule
默認(rèn)情況下拴事,Python解釋器會(huì)搜索當(dāng)前目錄沃斤、所有已安裝的內(nèi)置模塊和第三方模塊,搜索路徑存放在sys模塊的path變量中:
>>> import sys
>>> sys.path
['', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python36.zip', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6', ..., '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages']
如果我們要添加自己的搜索目錄挤聘,有兩種方法:
一是直接修改sys.path轰枝,添加要搜索的目錄:
>>> import sys
>>> sys.path.append('/Users/michael/my_py_scripts')
這種方法是在運(yùn)行時(shí)修改,運(yùn)行結(jié)束后失效组去。
第二種方法是設(shè)置環(huán)境變量PYTHONPATH,該環(huán)境變量的內(nèi)容會(huì)被自動(dòng)添加到模塊搜索路徑中步淹。設(shè)置方式與設(shè)置Path環(huán)境變量類似从隆。注意只需要添加你自己的搜索路徑诚撵,Python自己本身的搜索路徑不受影影響。