欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python自動(dòng)安裝第三方庫(kù)的小技巧(pip使用詳解)

 更新時(shí)間:2021年05月17日 11:09:51   作者:可以叫我才哥  
很多朋友私信小編Python安裝第三方庫(kù)安裝技巧,在這就不一一回復(fù)大家了,今天小編給大家分享一篇教程關(guān)于Python自動(dòng)安裝第三方庫(kù)的小技巧,本文以安裝plotly為例給大家詳細(xì)講解,感興趣的朋友跟隨小編一起看看吧

大家好,我是才哥。

最近周末也加班了,害…

有剛接觸python的粉絲同學(xué)在運(yùn)行此前《》的完整代碼遇到以下問(wèn)題,然后…

圖1:粉絲遇到的報(bào)錯(cuò)

好吧,今天我們就專門介紹一下Python安裝第三方庫(kù)的一些小技巧,其中還包含自動(dòng)安裝的方法哈。

1. pip在線安裝

在cmd命令行模式下,通過(guò)pip install 第三方庫(kù)名稱的形式,直接進(jìn)行第三方庫(kù)的安裝。

我們以安裝plotly為例,安裝表現(xiàn)如下:

pip install plotly

圖2:安裝第三方庫(kù)

如果需要安裝的第三方庫(kù)已經(jīng)存在,我們執(zhí)行安裝命令的時(shí)候會(huì)提示其存在且展示庫(kù)安裝的位置,其表現(xiàn)如下:

圖3:第三方庫(kù)存在的情況下安裝表現(xiàn)

如果你想卸載第三方庫(kù),可以通過(guò)pip uninstall 第三方庫(kù)名稱的形式,直接進(jìn)行第三方庫(kù)的卸載。

圖4:卸載第三方庫(kù)

當(dāng)然,大家在實(shí)際安裝的過(guò)程中可能還會(huì)遇到很多其他問(wèn)題,大致有如下兩種情況:

  • 安裝超時(shí)(因?yàn)樵诰€安裝,會(huì)請(qǐng)求第三方庫(kù)所在的源,默認(rèn)的源是在海外的,我們請(qǐng)求的時(shí)候可能速度過(guò)慢導(dǎo)致超時(shí)之類的)
  • 版本號(hào)不匹配(由于我們的python環(huán)境可能存在其他一些庫(kù),而庫(kù)與庫(kù)之間可能存在依賴關(guān)系,如果安裝的庫(kù)版本太新或者太舊都有可能與現(xiàn)有的庫(kù)存在不匹配而無(wú)法正常安裝)

對(duì)于安裝超時(shí)的情況,如果繼續(xù)采用pip在線安裝的模式,我們可以在安裝的時(shí)候指定國(guó)內(nèi)源,其指令方式如下:

pip install plotly -i https://pypi.tuna.tsinghua.edu.cn/simple

國(guó)內(nèi)源可選項(xiàng)(第3部分我們將介紹如何一勞永逸)

阿里云鏡像:http://mirrors.aliyun.com/pypi/simple/

清華大學(xué)鏡像:https://pypi.tuna.tsinghua.edu.cn/simple/

豆瓣鏡像:http://pypi.doubanio.com/simple/

中科大鏡像:https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/

對(duì)于版本號(hào)不匹配的情況,如果繼續(xù)采用pip在線安裝的模式,我們可以在安裝的時(shí)候指定版本號(hào),其指令方式如下:

pip install plotly==4.9

指定版本號(hào)有以下幾種方式:

  • 不指定的情況下,默認(rèn)安裝最新的
  • == 指定具體版本號(hào)
  • <= 指定最高版本號(hào)
  • >= 指定最低版本號(hào)
  • < 不高于某版本號(hào)
  • > 不低于某版本號(hào)

對(duì)于非指定具體版本號(hào)的情況,需要注意命令形式稍有不同:第三方庫(kù)及版本號(hào)關(guān)系需要用引號(hào)(""),否則會(huì)出現(xiàn)報(bào)錯(cuò)。

pip install "plotly<4.14"

以下為錯(cuò)誤示范命令:

pip install plotly<4.14

圖5:錯(cuò)誤示范

除了在線安裝指定版本號(hào)的第三方庫(kù)之外,我們還可以通過(guò)下載指定版本號(hào)的第三方庫(kù)whl文件,然后pip離線安裝,具體我們?cè)诘?部分介紹。

2. pip離線安裝

有時(shí)候,我們直接采用pip在線安裝的時(shí)候不太能安裝到需要的第三方庫(kù)版本,又或者我們沒(méi)有聯(lián)網(wǎng)環(huán)境進(jìn)行pip在線安裝。這個(gè)時(shí)候我們就可以先下載第三方,然后再用pip進(jìn)行離線安裝。

比如,我們還是以plotly為例,現(xiàn)在某網(wǎng)站下載其文件,然后再本地離線安裝。

圖6:那個(gè)地方第三方庫(kù)文件下載

安裝指令如下:

pip install D:\python\自動(dòng)安裝庫(kù)\plotly-4.14.3-py3-none-any.whl

圖7:離線安裝第三方庫(kù)

推薦下載第三方庫(kù)文件的網(wǎng)站:

那個(gè)地方:https://www.lfd.uci.edu/~gohlke/pythonlibs/

Pypi :https://pypi.org/

圖8:Pypi官方第三方庫(kù)文件下載

3. 查看與升級(jí)庫(kù)

我們學(xué)會(huì)了安裝庫(kù)和卸載庫(kù),那么怎么查看我們的環(huán)境下有哪些庫(kù)以及如果這些庫(kù)更新后本地如何同步更新呢?

關(guān)于查看

通過(guò)pip list 可以查看已經(jīng)安裝的庫(kù)。

圖9:查看已經(jīng)安裝的庫(kù)

通過(guò)pip show 庫(kù)名稱 可以查看指定的庫(kù)。

圖10:查看指定的庫(kù)

關(guān)于升級(jí)

通過(guò)pip list -o可以查看可升級(jí)的庫(kù)。

圖11:查看可以升級(jí)的庫(kù)

通過(guò) pip install --upgrade 庫(kù)名稱可以升級(jí)庫(kù)。

圖12:升級(jí)指定的庫(kù)

4. 設(shè)置國(guó)內(nèi)源

我們?cè)诘?部分pip在線安裝中介紹過(guò) 指定國(guó)內(nèi)源的命令形式,除此之外,我們也可以創(chuàng)建一個(gè)配置文件,將默認(rèn)的源指定為我們采用的國(guó)內(nèi)源,從而一勞永逸的解決而不需要每次都加上國(guó)內(nèi)源地址。

方法很簡(jiǎn)單

在當(dāng)前用戶目錄下(C:\Users\xx\pip,xx 表示當(dāng)前使用的用戶,比如gongdc)創(chuàng)建一個(gè) pip.ini文件,文件內(nèi)容如下:

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = https://pypi.tuna.tsinghua.edu.cn

圖13:設(shè)置國(guó)內(nèi)源配置文件

5. pip.main自動(dòng)安裝

以上我們熟悉了python在安裝、卸載、升級(jí)以及設(shè)置國(guó)內(nèi)源等。一般來(lái)說(shuō),我們編寫的python代碼都會(huì)依賴很多現(xiàn)有的第三方庫(kù),這也是學(xué)習(xí)python相對(duì)簡(jiǎn)單的原因。

大多數(shù)情況下,我們需要依賴的庫(kù)并不直接存在于我們當(dāng)前的環(huán)境,需要先進(jìn)行安裝之后才能正常運(yùn)行我們的代碼。所以,每次我們拿到別人編寫好的代碼的時(shí)候,直接運(yùn)行的時(shí)候可能就會(huì)出現(xiàn)報(bào)錯(cuò)。

其實(shí),我們?cè)谝脦?kù)的時(shí)候,只需要做以下操作,就可以不需要手動(dòng)進(jìn)行依賴庫(kù)的安裝了。

核心:使用pip.main()方法進(jìn)行依賴庫(kù)的安裝(這里窮舉了需要用到的庫(kù))

# 如果需要引用的庫(kù)未安裝,則自動(dòng)安裝 
try:
    import requests
    import pandas as pd
    from bs4 import BeautifulSoup
    import jieba
    import jieba.analyse
    import matplotlib.pyplot as plt
    from wordcloud import WordCloud,STOPWORDS
    import numpy as np
    from PIL import Image
# 使用pip.main()方法進(jìn)行依賴庫(kù)的安裝(這里窮舉了需要用到的庫(kù))   
except  ImportError:
    import pip
    pip.main(["install", "--user", "requests","beautifulsoup4","jieba","matplotlib","wordcloud","pandas","pillow"])
    import requests
    import pandas as pd
    from bs4 import BeautifulSoup
    import jieba
    import jieba.analyse
    import matplotlib.pyplot as plt
    from wordcloud import WordCloud,STOPWORDS
    import numpy as np    
    from PIL import Image

執(zhí)行以上代碼,如果有庫(kù)未安裝則運(yùn)行結(jié)果如下:

圖13:自動(dòng)下載第三方庫(kù)

6. 其他

除了上述這種自動(dòng)安裝第三方庫(kù)的方式,我們還可以通過(guò)以下方式處理:

import os

libs = ["requests","beautifulsoup4","jieba","matplotlib","wordcloud","pandas","pillow"]

for lib in libs:
    os.system("pip install " + lib)

圖14:os下自動(dòng)安裝庫(kù)

一些報(bào)錯(cuò)提示

報(bào)錯(cuò)提示 某某庫(kù)需要某某庫(kù)的什么版本號(hào)等等

問(wèn)題1:依賴庫(kù)匹配

報(bào)錯(cuò)提示 Consider using the --user option or check the permissions.

問(wèn)題2:--user

這種情況下,不要驚慌,添加 --user參數(shù)即可,參考案例:

pip install --user 第三方庫(kù)名稱

以上就是本次全部?jī)?nèi)容,希望能對(duì)大家了解python第三方庫(kù)的安裝有所幫助。

以上就是Python自動(dòng)安裝第三方庫(kù)的小技巧(pip使用詳解)的詳細(xì)內(nèi)容,更多關(guān)于Python自動(dòng)安裝第三方庫(kù)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python實(shí)現(xiàn)的登錄驗(yàn)證系統(tǒng)完整案例【基于搭建的MVC框架】

    Python實(shí)現(xiàn)的登錄驗(yàn)證系統(tǒng)完整案例【基于搭建的MVC框架】

    這篇文章主要介紹了Python實(shí)現(xiàn)的登錄驗(yàn)證系統(tǒng),結(jié)合完整實(shí)例形式分析了Python基于搭建的MVC框架進(jìn)行登錄驗(yàn)證操作的相關(guān)實(shí)現(xiàn)與使用技巧,需要的朋友可以參考下
    2019-04-04
  • 使用Python實(shí)現(xiàn)Oracle數(shù)據(jù)庫(kù)自動(dòng)巡檢程序

    使用Python實(shí)現(xiàn)Oracle數(shù)據(jù)庫(kù)自動(dòng)巡檢程序

    這篇文章主要為大家詳細(xì)介紹了如何創(chuàng)建一個(gè)Oracle數(shù)據(jù)庫(kù)自動(dòng)巡檢程序,以確保數(shù)據(jù)庫(kù)的順暢運(yùn)行,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-01-01
  • 在Pycharm中執(zhí)行scrapy命令的方法

    在Pycharm中執(zhí)行scrapy命令的方法

    今天小編就為大家分享一篇在Pycharm中執(zhí)行scrapy命令的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • Django+Celery實(shí)現(xiàn)定時(shí)任務(wù)的示例

    Django+Celery實(shí)現(xiàn)定時(shí)任務(wù)的示例

    Celery是一個(gè)基于python開(kāi)發(fā)的分布式任務(wù)隊(duì)列,而做python WEB開(kāi)發(fā)最為流行的框架莫屬Django,本示例使用主要依賴包Django+Celery實(shí)現(xiàn)定時(shí)任務(wù),感興趣的朋友一起看看吧
    2021-06-06
  • Python使用docx模塊實(shí)現(xiàn)刷題功能代碼

    Python使用docx模塊實(shí)現(xiàn)刷題功能代碼

    今天小編就為大家分享一篇Python使用docx模塊實(shí)現(xiàn)刷題功能代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02
  • 公認(rèn)8個(gè)效率最高的爬蟲框架

    公認(rèn)8個(gè)效率最高的爬蟲框架

    在本篇文章里小編給大家整理的是關(guān)于2020年8個(gè)效率最高的爬蟲框架知識(shí)點(diǎn),需要的朋友們可以學(xué)習(xí)下。
    2020-07-07
  • Python?一篇文章看懂Python集合與字典數(shù)據(jù)類型

    Python?一篇文章看懂Python集合與字典數(shù)據(jù)類型

    集合并不是一種數(shù)據(jù)處理類型,而是一種中間類型。集合(set)是一個(gè)無(wú)序、不重復(fù)的元素序列,經(jīng)常被用來(lái)處理兩個(gè)列表進(jìn)行交并差的處理性。本文將詳細(xì)講解集合的一些常用方法,感興趣的可以了解一下
    2022-03-03
  • 像線程一樣管理進(jìn)程的Python multiprocessing庫(kù)

    像線程一樣管理進(jìn)程的Python multiprocessing庫(kù)

    multiprocessing庫(kù)是基于threading API,它可以把工作劃分為多個(gè)進(jìn)程.有些情況下,multiprocessing可以作為臨時(shí)替換取代threading來(lái)利用多個(gè)CPU內(nèi)核,相應(yīng)地避免Python全局解釋器鎖所帶來(lái)的計(jì)算瓶頸.本文詳細(xì)介紹了Python multiprocessing庫(kù),需要的朋友可以參考下
    2021-05-05
  • python文件寫入write()的操作

    python文件寫入write()的操作

    這篇文章主要介紹了python文件寫入write()的操作,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • 聽(tīng)歌識(shí)曲--用python實(shí)現(xiàn)一個(gè)音樂(lè)檢索器的功能

    聽(tīng)歌識(shí)曲--用python實(shí)現(xiàn)一個(gè)音樂(lè)檢索器的功能

    本篇文章中主要介紹了用python實(shí)現(xiàn)一個(gè)音樂(lè)檢索器,類似于QQ音樂(lè)的搖一搖識(shí)曲,有興趣的同學(xué)可以了解一下。
    2016-11-11

最新評(píng)論