找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

619

积分

0

好友

75

主题
发表于 前天 05:22 | 查看: 7| 回复: 0

对于任何软件项目,管理依赖项都是确保其顺利运行的必要条件。在 Python 开发中,各种实现特定功能的库和包同样不可或缺。本文将手把手带你完成在 Ubuntu Linux 系统上,为一个 Python 项目准备环境并安装所需依赖的全过程。

环境准备:我们需要什么?

在开始之前,请确保你具备以下条件:

  • Python 安装(我们将验证并可能安装)
  • Ubuntu 24.04、22.04、20.04 或其他版本
  • sudo 权限
  • 可用的互联网连接

第 1 步:更新 APT 软件包缓存

打开终端,首先更新系统的软件包仓库列表并升级现有软件包。这能确保我们后续安装的是最新可用的版本。

sudo apt update && sudo apt upgrade

第 2 步:安装 Python 和 Pip

通常 Ubuntu 会预装 Python 3,但我们可以用以下命令确认或安装它。

sudo apt install python3

使用apt命令验证Python3安装

接下来,安装 Python 的官方包管理工具 Pip。它是后续安装各种第三方库的关键。

sudo apt install python3-pip

通过apt安装python3-pip及其编译工具链

第 3 步:验证安装

安装完成后,通过检查版本来确认 Python 和 Pip 已就绪。

python3 --version
pip3 --version

验证Python与pip版本信息

第 4 步:创建虚拟环境(推荐)

为不同项目创建独立的虚拟环境是 Python 开发的最佳实践,它能有效避免包版本冲突。首先,安装创建虚拟环境所需的模块。

sudo apt install python3-venv

安装python3-venv模块

然后,进入你的项目目录,创建一个新的虚拟环境(这里以 myenv 为例)。

python3 -m venv myenv

创建成功后,激活该虚拟环境。激活后,你的命令行提示符通常会发生变化。

source myenv/bin/activate

第 5 步:安装项目依赖项(批量)

最常规的做法是使用 requirements.txt 文件来管理项目依赖。首先,在项目根目录创建该文件,并列出所有需要的包(每行一个),例如:

requests
flask
numpy
pandas

保存文件后,运行以下命令一次性安装所有依赖。

pip install -r requirements.txt

第 6 步:安装单个包

如果你只需要安装某个特定的库,可以直接使用 pip install 命令。例如,安装流行的 HTTP 库 requests

pip install requests

在虚拟环境中使用pip安装requests包

第 7 步:冻结依赖项(生成requirements.txt)

当你在一套环境中完成了所有依赖的安装和测试,并希望在其他地方(如生产服务器)复现完全相同的环境时,可以将当前已安装的包及其精确版本“冻结”到 requirements.txt 文件中。

pip freeze > requirements.txt

使用pip freeze命令生成requirements.txt文件

执行后,requirements.txt 文件的内容会类似这样:

certifi==2025.7.14
charset-normalizer==3.4.2
idna==3.10
requests==2.32.4
urllib3==2.5.0

第 8 步:停用虚拟环境

完成当前项目的开发工作后,可以退出虚拟环境,回到系统的全局 Python 环境。

deactivate

查看requirements.txt文件内容并退出虚拟环境

总结

通过以上步骤,你不仅学会了在 Ubuntu 上安装 Python 和 Pip,还掌握了使用虚拟环境进行依赖隔离、通过 requirements.txt 文件批量管理包等关键技能。这套标准化的 后端开发工作流 是构建可维护、可复现 Python 项目的基石。高效的 运维/DevOps/SRE 实践往往始于对这类基础依赖管理的良好掌控。如果你在实践过程中遇到其他问题,欢迎到 云栈社区 与更多开发者交流探讨。




上一篇:开源自托管笔记工具Memos:46K Star项目如何让数据真正属于你
下一篇:如何解释Node.js代码中的非显而易见决策?快速排序案例详解
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-1-24 01:42 , Processed in 0.846050 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表