Ubuntu中Python安装依赖项有哪些
Ubuntu中Python安装依赖项清单 在Ubuntu上配置Python环境,第一步往往不是直接安装Python本身,而是准备好它的“左膀右臂”——也就是各种系统依赖。这事儿其实不难,但依赖项分门别类,选对了组合,后续的安装和开发才能一路绿灯。下面这份清单,就帮你把不同场景下的核心依赖梳理清楚了。
Ubuntu中Python安装依赖项清单

在Ubuntu上配置Python环境,第一步往往不是直接安装Python本身,而是准备好它的“左膀右臂”——也就是各种系统依赖。这事儿其实不难,但依赖项分门别类,选对了组合,后续的安装和开发才能一路绿灯。下面这份清单,就帮你把不同场景下的核心依赖梳理清楚了。
一 使用包管理器安装时的常用依赖
如果你打算直接用apt安装Python,那么依赖可以分成两大块:必不可少的基础包,以及能让开发更顺手的工具包。
- 运行环境基础
- python3:Python解释器本身,这是核心。
- python3-pip:Python的包管理工具,安装第三方库就靠它。
- python3-venv:Python标准库自带的虚拟环境模块,用于创建隔离的项目环境。
- 可选但推荐的开发工具
- build-essential:包含了gcc、make等编译工具链。很多Python包在安装时需要编译C扩展,这个包是前提。
- python3-dev:提供了编译Python C扩展所需的头文件和静态库。
简单来说,安装下面这条命令列出的包,就能满足绝大多数基础安装和开发需求了:
sudo apt update && sudo apt install python3 python3-pip python3-venv
二 从源码编译安装时的依赖分组
想要体验最新版本,或者进行深度定制?从源码编译安装Python是更灵活的选择。这时候,需要的依赖就得更全面一些,它们大致可以归为以下几类:
- 编译与基础工具
- build-essential、gcc、make:编译工作的基石,缺一不可。
- SSL/加密、压缩与数据库
- libssl-dev、libffi-dev:让Python支持HTTPS、SSL加密等安全功能。
- zlib1g-dev、libbz2-dev、liblzma-dev、xz-utils:提供多种压缩格式(如.zip, .bz2, .xz)的支持。
- libsqlite3-dev:启用Python内置的SQLite数据库模块。
- 终端/编辑与交互
- libreadline-dev、libncurses5-dev、libncursesw5-dev:增强Python交互式命令行(REPL)的编辑和历史记录功能。
- tk-dev:用于支持Tkinter GUI模块。
- 其他常用库
- libgdbm-dev、libdb-dev、libpcap-dev、libexpat1-dev:分别对应一些特定的数据库、网络抓包和XML解析功能。
- 可选:wget/curl(用于下载源码)、llvm(在某些特定的构建或优化场景下有用)。
这些依赖确保了Python源码能够顺利编译,并且让诸如ssl、sqlite3、bz2、readline、tk等重要的标准库模块都能正常工作。一条命令即可搞定大部分:
sudo apt update && sudo apt install build-essential libssl-dev libffi-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev libncurses5-dev libncursesw5-dev tk-dev libgdbm-dev libdb-dev libpcap-dev xz-utils libexpat1-dev liblzma-dev wget curl llvm
三 多版本管理与虚拟环境相关依赖
现代Python开发,讲究的是版本隔离和项目隔离。这就涉及到两个利器:pyenv和虚拟环境。
- 多版本管理工具pyenv的依赖
- 为了让pyenv能够顺利编译和安装多个Python版本,你需要准备好编译环境。其依赖列表和上面“源码编译”部分高度重合,主要包括:
- make、build-essential
- libssl-dev、zlib1g-dev、libbz2-dev、libreadline-dev、libsqlite3-dev
- libncurses5-dev、libncursesw5-dev、xz-utils、tk-dev、libffi-dev、liblzma-dev
- wget/curl、llvm、git、python-openssl
- 为了让pyenv能够顺利编译和安装多个Python版本,你需要准备好编译环境。其依赖列表和上面“源码编译”部分高度重合,主要包括:
- 虚拟环境
- 使用标准库venv:安装好
python3-venv包后,通过python3 -m venv创建环境,再用source激活。/bin/activate - 使用virtualenv:通过pip安装
virtualenv包后,使用virtualenv创建并激活。
- 使用标准库venv:安装好
这样一来,pyenv负责在系统层面管理多个Python版本,而venv或virtualenv则在项目层面创建纯净的依赖空间,两者结合堪称最佳实践。
四 快速安装命令示例
理论说了不少,最后来点“干货”。下面几条命令,可以直接复制粘贴,覆盖不同场景:
- 仅安装运行与基础开发所需
sudo apt update && sudo apt install python3 python3-pip python3-venv
- 准备从源码编译(一次性安装常见依赖)
sudo apt update && sudo apt install -y build-essential libssl-dev libffi-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev libncurses5-dev libncursesw5-dev tk-dev libgdbm-dev libdb-dev libpcap-dev xz-utils libexpat1-dev liblzma-dev wget curl llvm
- 使用pyenv前的依赖
sudo apt update && sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python-openssl git
从最简单的运行环境,到复杂的多版本编译管理,按需选择一条命令执行,就能把基础打牢。剩下的,就是专注于你的代码了。


































