位置:首页 > Python > Ubuntu 里 Python 安装包在哪找?各类安装方式路径一次讲清

Ubuntu 里 Python 安装包在哪找?各类安装方式路径一次讲清

时间:2026-08-23  |  作者:云端旅人  |  阅读:0

目录

  1. Ubuntu 系统自带 Python 放在哪
  2. 通过 APT 安装的 Python 包路径
  3. pip 安装时,用户级和系统级路径有什么区别
  4. 源码编译安装时,路径由什么决定
  5. 虚拟环境中的包为什么最容易定位
  6. 怎么确认当前 Python 和包的实际路径

前言

在 Ubuntu 里查 Python 包路径,最常见的误区是把所有安装方式都当成同一套目录来看。实际上,系统自带、APT、pip、源码编译和虚拟环境各有典型落点;只要先分清安装来源,再结合解释器路径和模块查询命令,基本就能把当前环境的包位置判断清楚。

在 Ubuntu 里找 Python 安装包,难点往往不在“有没有装”,而在“这次到底是通过哪种方式装的”。系统自带解释器、APT、pip、源码编译和虚拟环境,分别会把可执行文件和包放进不同目录。顺着安装方式去判断,再配合几条查询命令,你就能快速确认当前环境实际在用哪一套路径。

Ubuntu 系统自带 Python 放在哪

Ubuntu 自带的 Python 3 可执行文件通常位于 /usr/bin/python3,它很多时候只是一个软链接,实际会指向具体版本,例如 /usr/bin/python3.10

与系统 Python 配套的标准库,以及通过系统包管理器安装的多数 Python 第三方包,常见位置是:

/usr/lib/python3/dist-packages/

这类路径属于系统默认搜索范围,通常不需要额外配置,解释器就能直接识别。

通过 APT 安装的 Python 包路径

如果你是用下面这种方式安装:

sudo apt install python3-

那么对应的包通常会被放到系统级目录:

/usr/lib/python3/dist-packages/

这类包的特点是对所有用户可用,并且由 Ubuntu 的包管理器统一维护。对于依赖系统稳定性的环境来说,这是最容易管理的一种安装方式。

pip 安装时,用户级和系统级路径有什么区别

pip 安装时,路径取决于你是以普通用户执行,还是带 sudo 执行。

普通用户安装:--user 路径

更推荐的做法是:

pip install --user

这样安装的包通常会进入当前用户目录:

~/.local/lib/python3.x/site-packages/

它只影响当前用户,不会改动系统 Python 环境,日常使用更稳妥。

使用 sudo 安装:系统级路径

如果你执行的是:

sudo pip install

包通常会安装到:

/usr/local/lib/python3.x/dist-packages/

这类安装会影响所有用户,也更容易和系统通过 APT 管理的 Python 包产生冲突,因此常规情况下并不推荐这样做。

源码编译安装时,路径由什么决定

如果 Python 是通过源码编译安装的,最终路径取决于编译配置。

默认情况下,可执行文件常见位置是:

/usr/local/bin/python3.x

对应的库文件和安装包目录常见位置是:

/usr/local/lib/python3.x/site-packages/

如果编译时使用了 ./configure --prefix 指定安装目录,那么这些路径会跟着改变。也就是说,源码安装没有单一固定位置,应该优先看当时的 prefix 配置。

另外,源码安装后有时还需要手动调整环境变量,才能让系统全局优先找到这套 Python。

虚拟环境中的包为什么最容易定位

使用 venvvirtualenv 创建虚拟环境后,包会被隔离在项目目录内部,常见位置是:

<项目目录>/venv/lib/python3.x/site-packages/

这种结构的好处是非常直接:项目依赖跟着项目走,不和系统 Python、其他项目环境混在一起。对现代 Python 开发来说,这通常也是最推荐的做法。

怎么确认当前 Python 和包的实际路径

如果你不确定系统当前使用的是哪套 Python,或者某个包究竟装到了哪里,可以直接用命令查询。

展示确认 Python 解释器与包实际安装路径的查询思路图
定位 Python 包路径的查询方法适合配合命令一起看,帮助读者把“解释器路径、搜索路径、具体包文件”三类信息区分开。
# 查找Python可执行文件路径
which python3
# 或 which python(系统默认Python 2.x)

# 查看Python解释器的sys.path(包含所有包搜索路径)
python3 -c "import sys; print(sys.path)"

# 查找特定包的安装路径(如requests包)
python3 -c "import requests; print(requests.__file__)"

其中,which python3 适合先看当前命中的解释器;sys.path 可以帮助你判断解释器会去哪些目录找包;而 requests.__file__ 这类方式,则适合精确确认某个包的实际落点。

一眼看懂 Ubuntu 里常见的 Python 包位置

如果只想先建立一个快速判断框架,可以按下面这组对应关系理解:

  • 系统自带 Python 可执行文件:/usr/bin/python3
  • APT 安装的 Python 包:/usr/lib/python3/dist-packages/
  • pip install --user 安装的包:~/.local/lib/python3.x/site-packages/
  • sudo pip install 安装的包:/usr/local/lib/python3.x/dist-packages/
  • 源码编译安装的 Python:常见于 /usr/local/bin/python3.x/usr/local/lib/python3.x/site-packages/
  • 虚拟环境中的包:<项目目录>/venv/lib/python3.x/site-packages/

实际排查时,先分清安装方式,再看解释器路径和 sys.path,通常很快就能定位问题。

免责声明:文中图文均来自网络,如有侵权请联系删除,心愿游戏发布此文仅为传递信息,不代表心愿游戏认同其观点或证实其描述。

相关文章

更多

精选合集

更多

大家都在玩

热门话题

大家都在看

更多