首先需要在系統上安裝好 Python,然后執行 cmd 進入 DOS 環境,再次輸入 python 進入 python 開發環境。
Python 3.8 之前的版本
在 Python 3.8 以下的版本,可以通過輸入執行以下命令來批量更新所有過期的 packages 庫文件:
import pip
from subprocess import call
for dist in pip.get_installed_distributions():
call("pip install -U " + dist.project_name, shell=True)
但是在 Python 3.8 里面執行上述語句,則會提示以下沒有該屬性的錯誤:
AttributeError: module 'pip' has no attribute 'get_installed_distributions'
Python 3.8 的版本
在參考了 Stack Overflow 上的相關資料 后,將批量更新的代碼改成下面的代碼,就可以在 Python 3.8 的環境下批量更新所有過期的 packages 庫文件了。
Python 3.8 更新所有過期的 packages 代碼:
import pip
from subprocess import call
from importlib import metadata as importlib_metadata
# 上一條語句在低版本中可能要改成 import importlib_metadata
for dist in importlib_metadata.distributions():
print("Updating for:", dist.metadata["Name"]) # 看進度用,非必需
call("pip install -U " + dist.metadata["Name"], shell=True)
一些重要的 Tips
其他一些重要的 pip 命令(注:部分 package 名稱僅作示例):
pip install pigar # 安裝 pigar 庫
pip install pigar -i https://pypi.douban.com/simple
# 指定從國內豆瓣鏡像站點安裝 pigar 庫
# 可在訪問 pypi 不穩定和安裝 package 失敗的情況下使用
pip config set global.index-url https://pypi.douban.com/simple
# 設置全局安裝 package 的鏡像站點,以后就不用再每次安裝時指定來源了
pip install -U requests # 升級 requests 庫
pip install --upgrade requests # 等同於上一條語句,升級用
pip list --outdated # 列出所有已過期的 package
python -m ensurepip
python -m pip install -U pip
# 使用 `pip install -U pip` 升級 pip 自身失敗后,無法啟動 pip 的修復
easy_install pip # 當然,也可以試試這個修復安裝 pip
pigar # 在項目文件夾下,利用 pigar 庫生成項目的依賴文件 requirements.txt
pip install -r requirements.txt
# 利用 requirements.txt 安裝項目的依賴庫,調試起來省心省力
最后,如果是使用 conda 管理庫文件,可以使用 conda update --all
更新所有可升級的庫。