Ubuntu Python包管理指南
Ubuntu系统提供了多种Python包管理方式,涵盖系统级、用户级及项目级需求。以下是常用方法的详细步骤及注意事项:
APT是Ubuntu默认的系统包管理器,用于安装系统预编译的Python包(多为稳定版本)。
sudo apt update(同步远程仓库的最新包信息)sudo apt install python3-包名(如sudo apt install python3-requests,安装系统版本的requests库)sudo apt remove python3-包名(如sudo apt remove python3-requests)dpkg -l | grep python3-(过滤出所有系统安装的Python 3包)/usr/lib/python3/dist-packages/,优先级高于用户级安装的包,修改系统包可能导致依赖冲突,需谨慎操作。PIP是Python的官方工具,用于安装PyPI(Python Package Index)上的第三方包,支持版本控制和用户级安装。
sudo apt install python3-pip(首次安装);pip3 install --upgrade pip(升级至最新版)pip3 install 包名(如pip3 install requests,安装最新版);pip3 install 包名==版本号(如pip3 install requests==2.25.1,指定版本)pip3 uninstall 包名(如pip3 uninstall requests)pip3 list(列出所有用户级/全局安装的PIP包);pip3 show 包名(如pip3 show requests,显示包详情)pip3 install --upgrade 包名(如pip3 install --upgrade requests)sudo pip install(会将包安装到系统目录,破坏依赖关系),优先使用用户级安装(pip3 install --user 包名)或虚拟环境。虚拟环境是解决多项目依赖冲突的核心工具,推荐使用Python内置的venv模块(无需额外安装)。
python3 -m venv myenv(在当前目录生成myenv虚拟环境文件夹)source myenv/bin/activate(激活后,命令行前缀显示(myenv),表示进入虚拟环境)pip install 包名安装的包仅对当前环境有效,不会影响全局或其他项目。deactivate(回到系统全局环境)通过requirements.txt文件记录项目依赖,确保他人或新环境能快速复现相同的包版本。
pip freeze > requirements.txt(将当前虚拟环境中的所有包及版本写入requirements.txt)pip install -r requirements.txt(根据文件中的列表安装所有依赖,常用于项目初始化)requirements.txt内容可能如下:requests==2.25.1
numpy>=1.21.0
pandas~=1.3.0
(==指定精确版本,>=指定最低版本,~=允许小版本更新)
Poetry集成了依赖管理、虚拟环境创建和项目打包,适合复杂项目。
curl -sSL https://install.python-poetry.org | python3 -(全局安装)poetry init(按提示填写项目信息,生成pyproject.toml配置文件)poetry add 包名(如poetry add requests,自动添加到pyproject.toml和poetry.lock)poetry install(根据poetry.lock创建虚拟环境并安装依赖)poetry shell(进入项目虚拟环境)Conda适合数据科学项目,支持Python及非Python依赖(如C库)。
conda create --name myenv python=3.9(创建名为myenv的环境,指定Python版本)conda activate myenv(激活后,后续命令在环境中执行)conda install 包名(如conda install numpy,优先从conda仓库安装);pip install 包名(也可使用pip安装PyPI包)conda env export > environment.yml(生成环境配置文件,便于分享)conda env create -f environment.yml(根据文件创建相同环境)python3-numpy)用APT安装,第三方包(如requests)用PIP安装,减少冲突风险。requirements.txt或虚拟环境中明确指定,避免因版本升级导致的问题。sudo apt update && sudo apt upgrade(更新系统包)、pip3 install --upgrade pip(更新PIP),确保工具安全性。