在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一文了解pip的超全使用指南

python爬蟲知識分享 ? 來源:python爬蟲知識分享 ? 作者:python爬蟲知識分享 ? 2022-03-11 16:03 ? 次閱讀

1. 查詢軟件包

查詢當前環境安裝的所有軟件包

$ pip list

查詢 pypi 上含有某名字的包

$ pip search pkg

查詢當前環境中可升級的包

$ pip list --outdated

查詢一個包的詳細內容

$ pip show pkg

2. 下載軟件包

在不安裝軟件包的情況下下載軟件包到本地

$ pip download --destination-directory /local/wheels -r requirements.txt

下載完,總歸是要安裝的,可以指定這個目錄中安裝軟件包,而不從 pypi 上安裝。

$ pip install --no-index --find-links=/local/wheels -r requirements.txt

當然你也從你下載的包中,自己構建生成 wheel 文件

$ pip install wheel
$ pip wheel --wheel-dir=/local/wheels -r requirements.txt

3. 安裝軟件包

使用 pip install 可以很方便地從 pypi 上搜索下載并安裝 python 包。

如下所示

$ pip install requests

這是安裝包的基本格式,我們也可以為其添加更多參數來實現不同的效果。

3.1 只從本地安裝,而不從 pypi 安裝

# 前提你得保證你已經下載 pkg 包到 /local/wheels 目錄下
$ pip install --no-index --find-links=/local/wheels pkg

3.2 限定版本進行軟件包安裝

以下三種,對單個 python 包的版本進行了約束

# 所安裝的包的版本為 2.1.2
$ pip install pkg==2.1.2

# 所安裝的包必須大于等于 2.1.2
$ pip install pkg>=2.1.2

# 所安裝的包必須小于等于 2.1.2
$ pip install pkg<=2.1.2

以下命令用于管理/控制整個 python 環境的包版本

# 導出依賴包列表
pip freeze >requirements.txt

# 從依賴包列表中安裝
pip install -r requirements.txt

# 確保當前環境軟件包的版本(并不確保安裝)
pip install -c constraints.txt

3.3 限制不使用二進制包安裝

由于默認情況下,wheel 包的平臺是運行 pip download 命令 的平臺,所以可能出現平臺不適配的情況。

比如在 MacOS 系統下得到的 pymongo-2.8-cp27-none-macosx_10_10_intel.whl 就不能在 linux_x86_64 安裝。

使用下面這條命令下載的是 tar.gz 的包,可以直接使用 pip install 安裝。

比 wheel 包,這種包在安裝時會進行編譯,所以花費的時間會長一些。

# 下載非二進制的包
$ pip download --no-binary=:all: pkg

#安裝非二進制的包
$ pip install pkg --no-binary

3.4 指定代理服務器安裝

當你身處在一個內網環境中時,無法直接連接公網。這時候你使用pip install 安裝包,就會失敗。

面對這種情況,可以有兩種方法:

下載離線包拷貝到內網機器中安裝

使用代理服務器轉發請求

第一種方法,雖說可行,但有相當多的弊端

步驟繁雜,耗時耗力

無法處理包的依賴問題

這里重點來介紹,第二種方法:

$ pip install --proxy [user:passwd@]http_server_ip:port pkg

每次安裝包就發輸入長長的參數,未免有些麻煩,為此你可以將其寫入配置文件中:$HOME/.config/pip/pip.conf

對于這個路徑,說明幾點

不同的操作系統,路徑各不相同

# Linux/Unix:
/etc/pip.conf
~/.pip/pip.conf
~/.config/pip/pip.conf

# Mac OSX:
~/Library/Application Support/pip/pip.conf
~/.pip/pip.conf
/Library/Application Support/pip/pip.conf

# Windows:
%APPDATA%\pip\pip.ini
%HOME%\pip\pip.ini
C:\Documents and Settings\All Users\Application Data\PyPA\pip\pip.conf (Windows XP)
C:\ProgramData\PyPA\pip\pip.conf (Windows 7及以后)

若在你的機子上沒有此文件,則自行創建即可

如何配置,這邊給個樣例:

[global]
index-url = http://mirrors.aliyun.com/pypi/simple/

# 替換出自己的代理地址,格式為[user:passwd@]proxy.server:port
proxy=http://xxx.xxx.xxx.xxx:8080

[install]
# 信任阿里云的鏡像源,否則會有警告
trusted-host=mirrors.aliyun.com

3.5 安裝用戶私有軟件包

很多人可能還不清楚,python 的安裝包是可以用戶隔離的。

如果你擁有管理員權限,你可以將包安裝在全局環境中。在全局環境中的這個包可被該機器上的所有擁有管理員權限的用戶使用。

如果一臺機器上的使用者不只一樣,自私地將在全局環境中安裝或者升級某個包,是不負責任且危險的做法。

命令很簡單,只要加上 --user 參數,pip 就會將其安裝在當前用戶的 ~/.local/lib/python3.x/site-packages 下,而其他用戶的 python 則不會受影響。

pip install --user pkg

來舉個例子

# 在全局環境中未安裝 requests
[root@localhost ~]# pip list | grep requests
[root@localhost ~]# su - test
[root@localhost ~]#

# 由于用戶環境繼承自全局環境,這里也未安裝
[test@localhost ~]# pip list | grep requests
[test@localhost ~]# pip install --user requests
[test@localhost ~]# pip list | grep requests
requests (2.22.0)
[test@localhost ~]#

# 從 Location 屬性可發現 requests 只安裝在當前用戶環境中
[test@ws_compute01 ~]$ pip show requests
---
Metadata-Version: 2.1
Name: requests
Version: 2.22.0
Summary: Python HTTP for Humans.
Home-page: http://python-requests.org
Author: Kenneth Reitz
Author-email: me@kennethreitz.org
Installer: pip
License: Apache 2.0
Location: /home/test/.local/lib/python2.7/site-packages
[test@localhost ~]$ exit
logout

# 退出 test 用戶,在 root 用戶環境中發現 requests 未安裝
[root@localhost ~]$ pip list | grep requests
[root@localhost ~]$

當你身處個人用戶環境中,python 導包時會先檢索當前用戶環境中是否已安裝這個包,已安裝則優先使用,未安裝則使用全局環境中的包。

驗證如下:

>>> import sys
>>> from pprint import pprint
>>> pprint(sys.path)
['',
 '/usr/lib64/python27.zip',
 '/usr/lib64/python2.7',
 '/usr/lib64/python2.7/plat-linux2',
 '/usr/lib64/python2.7/lib-tk',
 '/usr/lib64/python2.7/lib-old',
 '/usr/lib64/python2.7/lib-dynload',
 '/home/wangbm/.local/lib/python2.7/site-packages',
 '/usr/lib64/python2.7/site-packages',
 '/usr/lib64/python2.7/site-packages/gtk-2.0',
 '/usr/lib/python2.7/site-packages',
 '/usr/lib/python2.7/site-packages/pip-18.1-py2.7.egg',
 '/usr/lib/python2.7/site-packages/lockfile-0.12.2-py2.7.egg']
>>>

3.6 延長超時時間

網絡情況不是很好,在安裝某些包時經常會因為 ReadTimeout 而失敗。

對于這種情況,一般重試幾次就好了。

但是這樣難免有些麻煩,有沒有更好的解決方法呢?

有的,可以通過延長超時時間。

$ pip install --default-timeout=100 

4. 卸載軟件包

就一條命令,不再贅述

$ pip uninstall pkg

5. 升級軟件包

想要對現有的 python 進行升級,其本質上也是先從 pypi 上下載最新版本的包,再對其進行安裝。所以升級也是使用 pip install,只不過要加一個參數 --upgrade

$ pip install --upgrade pkg

在升級的時候,其實還有一個不怎么用到的選項 --upgrade-strategy,它是用來指定升級策略。

它的可選項只有兩個:

eager :升級全部依賴包

only-if-need:只有當舊版本不能適配新的父依賴包時,才會升級。

在 pip 10.0 版本之后,這個選項的默認值是 only-if-need,因此如下兩種寫法是一互致的。

$ pip install --upgrade pkg1
$ pip install --upgrade pkg1 --upgrade-strategy only-if-need

6. 配置文件

由于在使用 pip 安裝一些包時,默認會使用 pip 的官方源,所以經常會報網絡超時失敗。

常用的解決辦法是,在安裝包時,使用 -i 參數指定一個國內的鏡像源。但是每次指定就很麻煩呀,還要打超長的一串字母。

這時候,其實可以將這個源寫進 pip 的配置文件里。以后安裝的時候,就默認從你配置的這個 源里安裝了。

那怎么配置呢?文件文件在哪?

使用win+r 輸入 %APPDATA% 進入用戶資料文件夾,查看有沒有一個 pip 的文件夾,若沒有則創建之。

然后進入這個 文件夾,新建一個 pip.ini 的文件,內容如下

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


審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 軟件
    +關注

    關注

    69

    文章

    4988

    瀏覽量

    87833
  • 配置
    +關注

    關注

    1

    文章

    189

    瀏覽量

    18424
  • python
    +關注

    關注

    56

    文章

    4802

    瀏覽量

    84885
收藏 人收藏

    評論

    相關推薦

    示波器使用指南 如何選擇合適的示波器

    示波器使用指南 示波器是種電子測量儀器,用于顯示電壓隨時間變化的波形。以下是示波器的基本使用指南: 獲得基線 : 預置面板各開關、旋鈕至適當位置。 按下電源開關,電源指示燈點亮。 調節相關控制旋鈕
    的頭像 發表于 11-28 09:26 ?335次閱讀

    RTC時鐘使用指南:簡單步驟,實用成果

    今天展示的是RTC時鐘使用指南,輕松學習,完美成果。
    的頭像 發表于 11-08 11:40 ?389次閱讀
    RTC時鐘<b class='flag-5'>使用指南</b>:簡單步驟,實用成果

    技術指南 | 深視智能SRI系列體式激光三維輪廓測量儀快速使用指南

    技術指南 | 深視智能SRI系列體式激光三維輪廓測量儀快速使用指南
    的頭像 發表于 10-29 08:08 ?258次閱讀
    技術<b class='flag-5'>指南</b> | 深視智能SRI系列<b class='flag-5'>一</b>體式激光三維輪廓測量儀快速<b class='flag-5'>使用指南</b>

    技術指南 | 深視智能SCI系列光譜共焦位移傳感器快速使用指南

    技術指南 | 深視智能SCI系列光譜共焦位移傳感器快速使用指南
    的頭像 發表于 10-22 08:06 ?225次閱讀
    技術<b class='flag-5'>指南</b> | 深視智能SCI系列光譜共焦位移傳感器快速<b class='flag-5'>使用指南</b>

    C55x片上低壓差穩壓器(LDO)的使用指南

    電子發燒友網站提供《C55x片上低壓差穩壓器(LDO)的使用指南.pdf》資料免費下載
    發表于 10-11 10:20 ?0次下載
    C55x片上低壓差穩壓器(LDO)的<b class='flag-5'>使用指南</b>

    中短程超聲波應用優化和使用指南:TUSS4470和TDC1000

    電子發燒友網站提供《中短程超聲波應用優化和使用指南:TUSS4470和TDC1000.pdf》資料免費下載
    發表于 09-24 11:21 ?0次下載
    中短程超聲波應用優化和<b class='flag-5'>使用指南</b>:TUSS4470和TDC1000

    深視智能SGI系列激光位移傳感器快速使用指南

    深視智能SGI系列激光位移傳感器快速使用指南
    的頭像 發表于 07-27 08:45 ?425次閱讀
    深視智能SGI系列激光位移傳感器快速<b class='flag-5'>使用指南</b>

    深視智能SD33系列小型激光位移傳感器使用指南

    深視智能SD33系列小型激光位移傳感器使用指南
    的頭像 發表于 07-27 08:44 ?491次閱讀
    深視智能SD33系列小型激光位移傳感器<b class='flag-5'>使用指南</b>

    深視智能SD22系列小型激光位移傳感器使用指南

    深視智能SD22系列小型激光位移傳感器使用指南
    的頭像 發表于 07-27 08:42 ?488次閱讀
    深視智能SD22系列小型激光位移傳感器<b class='flag-5'>使用指南</b>

    GD32F10x 固件庫使用指南

    電子發燒友網站提供《GD32F10x 固件庫使用指南.pdf》資料免費下載
    發表于 05-22 14:15 ?27次下載

    芯海科技通用 MCU 應用筆記: CS32F103 FOC 電機評估板使用指南

    本文檔描述了基于芯海 CS32F103 系列芯片的矢量控制電機開發板 V1.00 的設計理念、結構和使用說明,以幫助用戶快速使用此開發板,評估 CS32F103 芯片在電機控制應用上的性能表現。*附件:應用筆記:CS32F103FOC電機評估板使用指南.pdf
    發表于 05-16 11:35

    熱敏FET使用指南

    電子發燒友網站提供《熱敏FET使用指南.pdf》資料免費下載
    發表于 02-22 09:35 ?0次下載
    熱敏FET<b class='flag-5'>使用指南</b>

    openai sora如何使用?Sora 使用指南:快速上手

    OpenAI Sora 使用指南:快速上手 歡迎使用OpenAI Sora,款強大的人工智能視頻生成工具。無論您是視頻制作新手還是專業人士,本指南將幫助您快速掌握Sora,輕松創作出高質量的視頻
    的頭像 發表于 02-20 11:19 ?4378次閱讀

    電力調整器的安裝與使用指南

    電力調整器的安裝與使用指南? 電力調整器是種用于調整電力供應的裝置,它可以穩定電壓、提高電流質量、減少電力損耗。在家庭、工業和商業場所中廣泛使用,如今,我們為您帶來電力調整器的安裝與使用指南。本文
    的頭像 發表于 02-03 10:13 ?1520次閱讀

    AT32F423 I 2C使用指南

    電子發燒友網站提供《AT32F423 I 2C使用指南.pdf》資料免費下載
    發表于 02-01 09:30 ?0次下載
    AT32F423 I 2C<b class='flag-5'>使用指南</b>
    主站蜘蛛池模板: 美女被异性狂揉下部羞羞视频| 天天摸天天躁天天添天天爽| 国产精品成人aaaaa网站| 加勒比一到三区| 亚洲第一香蕉视频| 黄色三级国产| 免费在线视频你懂的| 四虎影院永久网站| 狠狠操天天干| 狠狠操夜夜| tube69日本| 黄色网视频| 2018国产大陆天天弄| 美女被免网站在线视频| 天天色天天色天天色| 欧美午夜网| 免费永久视频| 天堂网在线www资源在线| videosgratis乱色欧美野外| 狠狠色丁香婷婷久久综合不卡| 女人大毛片一级毛片一| 国产一区二区高清在线| 黄色香蕉网| 一级片在线视频| 午夜亚洲福利| 天天舔天天射天天操| 天天舔天天射| 国产a一级毛片午夜剧场14| 国产情侣露脸| 999国产精品| 日本69sex护士wwxx| 狂野欧美激情性xxxx| 美女扒开尿口让男人30视频| 四虎在线永久视频观看| 美女被免费网站视频九色| 狠狠狠色丁香婷婷综合激情| 夜夜夜网| fenfencao在线观看免费视频| 日韩孕交| 亚洲国产成人在线| 五月桃花网婷婷亚洲综合|