Python 的套件使用 pip / pip3 安裝,在安裝新套件後,執行發現之前的版本太舊,於是要來做 PIP Package 升級~
Python PIP 套件如何(全部)升級
Python / Python3 的 pip 套件升級,命令:pip3 install -U package-name
PIP 列出有哪些套件、版本
- pip3 list # 列出目前系統有哪些套件
- Package Version
------ ------
acme 1.12.0
certbot 1.12.0
- Package Version
- pip3 list -o # 列出目前系統的套件、目前最新版本為何
- Package Version Latest Type
------ ------ ----- -----
acme 1.12.0 2.5.0 wheel
certbot 1.12.0 2.5.0 wheel
- Package Version Latest Type
PIP 自己 Upgrade
- python -m pip install --upgrade pip
- pip install --upgrade pip
- python3 -m pip install --upgrade pip
- pip3 install --upgrade pip
PIP 列出 outdated 的套件並全部升級
- pip3 list -o | cut -f1 -d' ' | awk '{if(NR>=3)print}' # outdated package list
- -o = --outdated (php3 list --help 可以查看還有哪些參數)
- pip3 list -o | cut -f1 -d' ' | awk '{if(NR>=3)print}' | xargs -n1 pip3 install -U # 全部丟進去升級
- pip3 install -U `pip3 list --outdated | awk 'NR>2 {print $1}'` # 精簡一點的寫法
- 大量升級的語法會需要跑多次,因為套件間有 dependencies,無法一次全部升級上去,若跑多次還沒辦法升級的,就需要手動解來慢慢升級了
遇到 No package 'dbus-1' found 的錯誤解法
- sudo apt install build-essential libdbus-glib-1-dev libgirepository1.0-dev
- pip3 install dbus-python
- 再來就是看到缺什麼套件再來慢慢補齊~
- 若有套件卡關,可以考慮 pip3 uninstall package-name # 先移除掉全部升級完成,有需要再安裝~