python---三方包和模塊的安裝

這里就不講三方包和模塊的概念以及什么發展史了,直接進主題;

安裝方式:分為本地安裝和遠程安裝

本地安裝:

1.對于單文件模塊,直接拷貝到相關文件夾,存放在sys.path包含的路徑都可以,一般存放在Lib/site package文件夾中;

2.對于帶setup.py的文件,a,打開命令行工具,b,切換到setup.py所在目錄,c,執行命令python setup.py install(python2.x版本),執行命令python3 setup.py install(python3.x版本),注意如果項目使用的是distutils打包,則命令沒問題,如果項目使用setuptools打包,而本地又沒有安裝setuptools則會報錯;

安裝setuptools:在https://pypi.python.org/pypi這個網址下載壓縮文件,依然使用python setup.py install命令安裝;

3.安裝.egg文件,只需要用easy_install egg文件就可以了;eay_install是setuptools的腳本,所以需要先安裝setuptools;

4.安裝.whl文件,也可以使用easy_install whl文件,當然最好還是使用pip install .whl文件,在使用pip的時候,還是應該先安裝pip,安裝pip很簡單,也是通過easy_install pip;

5.遠程安裝,自動從遠程地址檢索,下載,安裝某個模塊,之前我們安裝setuptools的時候就是手動去檢索,下載和安裝的;遠程安裝其實和手動安裝一個流程;可以通過easy_install安裝,也可以通過pip install安裝,其實這兩個方式都是setuptools的功能;我們還可以從下面的命令行中看出,檢索地址就是之前我們的搜索地址,安裝路徑也是在Lib/site_packages里面;

6.easy_install安裝到不同的python版本,使用easy_install-X.X 庫名;X.X是python版本,默認安裝是按照環境變量配置的先后順序,默認安裝在最前面的python版本;

7.easy_install安裝包的不同版本,使用easy_install"庫名 限定符 版本 【,限定符版本】",【】部分是可選,限定符就是>,<,=;使用==,如果已經安裝這個版本,則切換到這個版本;查看當前哪個版本屬于活動狀態直接查看easy_install.pth文件就可以;

easy_install-3.6 "requests <2.14.1"

easy_install-3.6 "requests == 2.14.1"

8.easy_install更新包的版本,使用easy_install --upgrade 包名就可以了;

9.easy_install卸載包。手動卸載:刪除easy_install.pth里面對應的包名,刪除包文件,只需要兩步就可以手動刪除,easy_install.pth主要作用就是記錄當前通過easy_install.pth安裝的包,導入模塊時的路徑檢索;命令卸載:easy_install -m 包名,這個命令其實就是把包名從easy_install.pth里面移除;

10.easy_install -m 包名的真正作用:其實這個命令的真正作用是動態切換庫的版本,首先我們把easy_install.pth里面的包名移除,這樣解釋器就不會找到一個固定的包版本了,現在就可以使用以下命名:

import pkg_resources

pak_resources.require("包的具體版本")

11.easy_install切換安裝源:我們知道包都是托管在國外的服務器上的,我們在國內安裝的時候會很慢,所以我們就可以切換安裝源,使用國內的鏡像地址,相當于是在國內的服務器上面下載,就會快很多,切換安裝源其實就是去修改easy_install 的下載地址,我們找到下面這個地址,打開easy_install.py文件,然后去把https://pypi.python.org/pypi地址改成國內的就可以了,比如豆瓣鏡像地址:https://pypi.douban.com/simple/,使用這個地址下載就會快很多;

Python\Python36-32\Lib\site-packages\setuptools-39.0.1-py3.6\setuptools\command

easy_install的常用操作也就講完了,現在開始pip的常用操作,pip是基于setuptoos的安裝命令;

1.切換安裝源:一次性切換:pip install --index-url?https://pypi.douban.com/simple/requests,這種方式就是指定檢索,只會在這個地址去下載。還有一種擴展檢索,用于在官網上下載沒有之后去檢索的地址:pip install --extra-index-url?https://pypi.douban.com/simple/requests;永久性切換:需要在c://users/你的用戶名/創建pip文件夾/文件夾下面創建pip.ini文件,然后把下面內容考進去:下面內容就表示把安裝源切換成了豆瓣的地址;

[global]

index-url = https://pypi.douban.com/simple

[install]

trusted-host=pypi.douban.com

2.安裝在不同環境中:方式1,python -m pip install requests(python2.x)? python3 -m pip install requests(python3.x);方式2,py -2 -m pip install requests,py -3 -m pip install requests;第二種方式是因為python的安裝包實際上在系統中安裝了一個啟動器py.exe,我們可以通過啟動器去調用不同版本的python去執行某些腳本;

3.查看包的信息:所以已經安裝的包:pip list,不被依賴的包:pip list --not-required;過期的包:pip list --outdated;查看某個包的具體信息:pip show xxx;

4.搜索包:pip search xxx,指定路徑檢索 pip search -i 檢索地址 xxx;

5.安裝指定版本:pip install "模塊 限定符 版本號【,限定符版本】 "其實就是把之前的easy_install換成現在的pip install;

6.升級包:pip install --upgrade 包名;

7.卸載包:pip uninstall 包名;如果是通過easy_install安裝的會自動刪除easy_install.pth文件對應的包路徑,刪除對應的.egg包文件;如果是通過pip.install安裝會直接刪除對應的包文件;

8.生成凍結需求文檔:將當前安裝的第三方包記錄,存儲到指定文件中,以后可根據這個需求文檔去安裝三方包;命令是:pip freeze > ./requirements.text;? ./指的就是當前目錄;根據凍結需求文檔安裝三方包:pip install -r requirements;這個命令會把需求文檔里面所有的三方包都安裝,這樣就比一個一個去裝簡便不少;

9.三方模塊的版本說明:版本主要是由三部分組成:n1.n2.n3;n3的含義是當版本的bug修復之后,n3就加一,n2的含義是當新增一個小功能之后,n2加一同時n3應該置零,這里我們必須要知道的是n3就是針對版本的bug,當我們增加了小功能,升級了版本,針對這個版本目前還沒有bug所以必須是置零的,同樣的道理,當作了一個很大的修改之后,必須修改了之前的api,這時候n1就加一,同時n2和n3也要置零,因為針對當前的版本,我們沒有新增過小功能,也沒有解決過bug,所以自然應該置零了;當以后自己發布庫的時候也應該遵循這種規則;

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,739評論 6 534
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,634評論 3 419
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,653評論 0 377
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,063評論 1 314
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,835評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,235評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,315評論 3 442
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,459評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,000評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,819評論 3 355
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,004評論 1 370
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,560評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,257評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,676評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,937評論 1 288
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,717評論 3 393
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,003評論 2 374

推薦閱讀更多精彩內容