1. 程式人生 > 實用技巧 >pip 的高階玩法

pip 的高階玩法

pip 的高階玩法

pip 應該是大家最熟悉的 Python 包安裝與管理工具了,但是除了pip install 這個最常用的命令,還有很多有用的玩法。這裡就介紹幾個我平時會用到的,希望對大家有所幫助。

pip freeze

這個命令可以檢視已經安裝的包及版本資訊,當你要換電腦,或者朋友想復刻你已安裝的包,又不想一個一個重新安裝。這時就可以使用pip freeze > requirements.txt ,批量匯出當前開發環境的包資訊,然後安裝requirements.txt依賴就行了。

pip freeze > requirements.txt 
pip install -r requirements.txt

pip cache

用pip安裝python模組的時候,重複安裝某一模組會經常出現“Using cache”,這樣很容易裝錯版本。而且cache還會佔用不少C盤空間,如果空間不足,可以直接刪除這些快取。 方法:

Win + R ,輸入%LocalAppData%\pip\Cache

刪掉 cache/ 目錄下的所有資料夾就好了

pip list

pip list 命令列出所有安裝包和版本資訊,pip list --outdate可以列出所有可升級的包。


但是當前內建命令並不支援升級所有已安裝的Python模組,不過可以寫一個:

import pip
from subprocess import call
from pip._internal.utils.misc import get_installed_distributions
for dist in get_installed_distributions():
    call("pip install --upgrade " + dist.project_name, shell=True)

替代方案是使用pip-review,這是一個分叉pip-tools,安裝和使用

pip install pip-review
#檢視可更新 
pip-review
#自動批量升級 
pip-review --auto
#以互動方式執行,對每個包進行升級 
pip-review --interactive

pip.init

pip 用國外的源下載安裝包會比較慢,還經常出錯安裝失敗,可以將安裝源切換成國內映象,速度×10!改一些pip.init配置,一勞永逸,具體做法:
Win + R ,輸入 %APPDATA% 在當前目錄下新建 pip 資料夾,然後新建 pip.ini 檔案,內容如下

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

我直接設定成了阿里的,豆瓣的源速度也很快。

豆瓣(douban) http://pypi.douban.com/simple/ 
清華大學 https://pypi.tuna.tsinghua.edu.cn/simple/ 
中國科技大學 https://pypi.mirrors.ustc.edu.cn/simple/