[Troubleshooting] 使用 pipx 管理 Python 软件包
Categories Troubleshooting
Tags
pipx 对 Python CLI Application 都会创建一个独立的虚拟环境 venv,在其中安装这个 Package 及其需要的依赖,并且将其 CLI 命令暴露到 ~/.local/bin。较为适用于需要在命令行使用的 Package,例如 CS50x 的 submit50 style50 check50 etc…
Installation
brew install pipx
pipx ensurepath # 检查 pipx 暴露 CLI 命令的目录是否加入到 $PATH
pipx install submit50
pipx list
Usage
Update
如果需要更新 Packages
pipx upgrade submit50
pipx upgrade-all
Uninstall
需要卸载
pipx uninstall submit50
pipx uninstall-all
类似的还有 reinstall…
Inject
eagle233@Eagle233-M2Air world % help50 make hello
Traceback (most recent call last):
File "/Users/eagle233/.local/bin/help50", line 6, in <module>
from help50.__main__ import main
File "/Users/eagle233/Library/Application Support/pipx/venvs/help50/lib/python3.14/site-packages/help50/__init__.py", line 2, in <module>
from pkg_resources import get_distribution, DistributionNotFound
ModuleNotFoundError: No module named 'pkg_resources'
这种情况下可以给 help50 注入 setuptools (pkg_resources 由其提供)
pipx inject help50 setuptools
实际上 help50 无法使用是因为pkg_resources was removed in version v82.0.0
因此可以
pipx inject help50 "setuptools<81" --force
指定 Python 版本
pipx reinstall help50 --python python3.13
pipx reinstall style50 --python python3.13
pipx reinstall check50 --python python3.13
pipx reinstall submit50 --python python3.13
Page views: Loading... · Visitors: Loading...
Except where otherwise noted, original content on this site is dedicated to the public domain under CC0 1.0.
Powered by Hexo & Theme mdsuper
沪ICP备2026040813号