杰瑞科技汇

Python Linux下如何安装模块?

pipvenv

在开始之前,你必须了解两个最重要的工具:

Python Linux下如何安装模块?-图1
(图片来源网络,侵删)
  1. pip (Python Package Installer):

    • 作用:Python 的官方包安装器,它从 Python Package Index (PyPI) 这个全球最大的 Python 软件仓库下载并安装第三方库。
    • 类比:就像 Linux 里的 apt (Debian/Ubuntu) 或 yum/dnf (CentOS/RHEL)。
  2. venv (Virtual Environment):

    • 作用:创建一个独立的、隔离的 Python 环境,在这个环境中,你可以安装特定版本的库,而不会影响到系统全局的 Python 环境或其他项目。
    • 为什么重要:避免“依赖地狱”(Dependency Hell),项目 A 需要 requests==2.25.0,而项目 B 需要 requests==2.28.0,使用虚拟环境可以完美解决这个问题。
    • 最佳实践永远在虚拟环境中进行项目开发和安装。

第一步:检查 Python 和 pip 是否已安装

在安装任何模块之前,先确认你的系统环境。

检查 Python 版本

打开你的终端(Terminal),输入以下命令:

Python Linux下如何安装模块?-图2
(图片来源网络,侵删)
python3 --version

或者

python --version
  • 如果看到版本号(如 Python 3.10.6),说明 Python 已安装,推荐使用 python3 命令,因为很多 Linux 系统同时安装了 Python 2 和 Python 3。
  • 如果提示 command not found,说明 Python 未安装,你需要先安装它。

检查 pip 是否已安装

同样在终端输入:

pip3 --version

或者

pip --version
  • 如果看到版本信息(如 pip 23.0.1 from /usr/lib/python3.10/site-packages/pip (python 3.10)),说明 pip 已安装。
  • 如果提示 command not found,说明 pip 未安装,你需要先安装它。

第二步:安装 Python 和 pip(如果未安装)

根据你的 Linux 发行版,使用对应的包管理器进行安装。

Python Linux下如何安装模块?-图3
(图片来源网络,侵删)

对于 Debian / Ubuntu / Mint 系统

# 更新软件包列表
sudo apt update
# 安装 Python 3 和 pip
sudo apt install python3 python3-pip python3-venv
  • python3: Python 3 解释器。
  • python3-pip: pip 安装程序。
  • python3-venv: 用于创建虚拟环境的模块。

对于 CentOS / RHEL / Fedora 系统

# 对于 CentOS/RHEL 7/8, 可能需要先安装 EPEL 仓库
sudo yum install epel-release
# 安装 Python 3 和 pip
sudo yum install python3 python3-pip
  • 在较新的版本(如 Fedora 28+ 或 CentOS 8+)中,python3-venv 通常会作为 python3 的依赖自动安装,如果没有,可以手动安装:sudo yum install python3-venv

对于 Arch Linux 系统

sudo pacman -S python python-pip
  • 在 Arch 上,venv 模块是 Python 标准库的一部分,无需单独安装。

第三步:安装 Python 模块(核心操作)

你已经准备好了 pip,我们来学习如何安装模块。

直接安装(不推荐,仅用于全局工具)

这种方法会将模块安装到系统全局的 Python 环境中。不推荐用于项目开发,因为容易造成版本冲突。

# 安装最新版本的模块
pip3 install <模块名>
# 示例:安装 requests 库
pip3 install requests
# 安装特定版本的模块
pip3 install <模块名>==<版本号>
# 示例:安装 Django 4.1 版本
pip3 install django==4.1.7
# 从 `requirements.txt` 文件安装所有依赖
# 这个文件通常包含项目所需的所有库及其版本号
pip3 install -r requirements.txt

在虚拟环境中安装(强烈推荐)

这是专业开发的标准流程。

创建项目目录和虚拟环境

# 1. 创建一个项目文件夹
mkdir my-awesome-project
cd my-awesome-project
# 2. 在项目文件夹内创建一个名为 venv 的虚拟环境
#    `python3 -m venv venv` 是最推荐、最标准的命令
python3 -m venv venv

执行后,你的项目目录下会出现一个 venv 文件夹,它包含了独立的 Python 解释器和 pip

激活虚拟环境

source venv/bin/activate

激活后,你会发现终端提示符前面多了 (venv) 字样,这表示你当前正在虚拟环境中工作。

在虚拟环境中安装模块

所有 pip 命令都只会作用于这个虚拟环境。

# 激活后,可以直接使用 pip (而不是 pip3)
pip install <模块名>
# 示例:安装 numpy 和 pandas
pip install numpy pandas
# 你可以检查安装的包
pip list
# 会看到类似:
# Package    Version
# ---------- -------
# numpy      1.24.3
# pandas     2.0.1

退出虚拟环境

当你完成工作后,输入以下命令退出虚拟环境:

deactivate

终端提示符前的 (venv) 会消失。


第四步:管理和升级模块

升级已安装的模块

pip install --upgrade <模块名>
# 示例:升级 requests 到最新版本
pip install --upgrade requests

卸载模块

pip uninstall <模块名>
# 示例:卸载不再需要的 pandas
pip uninstall pandas

生成依赖清单(requirements.txt

当你完成项目开发后,需要将所有依赖的库及其版本号保存到一个文件中,方便别人或部署时使用。

# 确保你在激活的虚拟环境中执行此命令
pip freeze > requirements.txt

这会在当前目录下生成一个 requirements.txt 文件,内容类似:

numpy==1.24.3
pandas==2.0.1
requests==2.28.2

其他开发者拿到你的项目后,只需要:

# 1. 创建并激活虚拟环境
python3 -m venv venv
source venv/bin/activate
# 2. 安装 requirements.txt 中的所有依赖
pip install -r requirements.txt

就能完美复现你的开发环境。


常见问题与解决方案

问题 1:pip 权限错误(Permission denied

错误信息可能类似:ERROR: Could not install packages due to an OSError: [Errno 13] Permission denied

原因:尝试用 pip 将模块安装到系统全局目录(如 /usr/local/lib/),这需要 root 权限。

解决方案

  • 最佳实践:始终使用虚拟环境,从根源上避免此问题。
  • 临时方案(不推荐):如果确实需要全局安装,可以使用 sudo,但这有风险,可能破坏系统 Python 环境。
    sudo pip3 install <模块名>

问题 2:ModuleNotFoundError: No module named '...'

原因

  1. 你忘记激活虚拟环境了。
  2. 你在虚拟环境中安装了模块,但尝试在虚拟环境外运行代码。
  3. 你安装了模块,但拼写错误或大小写不正确。

解决方案

  1. 激活虚拟环境:运行 source venv/bin/activate
  2. 检查安装:激活后,用 pip list 确认模块是否在列表中。
  3. 检查拼写:确保代码中 import 的模块名和安装的模块名完全一致。

问题 3:pip 命令找不到,但 pip3 可以

原因:你的系统只安装了 pip3,而没有创建 pip 的符号链接。

解决方案

  1. 使用 pip3 代替 pip,这是最简单的方法。
  2. 创建一个软链接(需要 sudo 权限):
    sudo ln -s /usr/bin/pip3 /usr/bin/pip

总结与最佳实践

操作 命令 说明
检查版本 python3 --version / pip3 --version 确认环境是否就绪
创建虚拟环境 python3 -m venv my-project-env 在项目目录下创建隔离环境
激活虚拟环境 source my-project-env/bin/activate 开始工作前必做
安装模块 pip install <module_name> 在激活的虚拟环境中安装
生成依赖 pip freeze > requirements.txt 导出当前环境的所有依赖
安装依赖 pip install -r requirements.txt 根据文件安装所有依赖
退出虚拟环境 deactivate 工作结束后必做
升级模块 pip install --upgrade <module_name> 保持模块更新

记住这个黄金法则:永远在虚拟环境中为你的项目安装模块,这会让你的 Python 开发之路更加顺畅和高效。

分享:
扫描分享到社交APP
上一篇
下一篇