Linux终端下查看Python版本的常用命令有哪些

夏知夏
夏知夏
发布时间:2026-10-24| 6人浏览过
原创
在Linux终端中,最常用且直接的查看Python版本命令是 python3 --version(或简写为 python3 -V)。如果服务器保留了早期环境,也可使用 python --version。此外,当需要确认具体由哪个可执行文件运行或在脚本中提取版本时,还可通过 which、type 以及内建的 sys 和 platform 模块进行精准查询。

一、直接查看版本号的核心命令

绝大多数现代Linux发行版(如Ubuntu 20.04+、Debian 11+、Rocky Linux、CentOS 8+等)默认安装并使用Python 3。在终端中,可以通过以下命令直接输出主版本号:

终端命令:标准长参数

python3 --version

终端命令:短参数缩写(大写字母V)

python3 -V

执行后终端会直接输出简短的版本标识,例如:

Python 3.10.12

需要特别注意大写和小写的区别:参数 -V 必须为大写。如果输入小写的 python3 -v,该选项在Python解释器中代表“详细输出模式(verbose)”,不仅不会简短输出版本号,反而会直接启动交互式终端并打印大量的模块导入追踪日志。

关于 python 与 python3 命令的对应关系

在较旧的系统或部分配置了符号链接的系统中,直接输入 python -V 可能返回 Python 2.x(例如 Python 2.7.18),也可能提示 command not found。因为PEP 394规范建议各发行版逐步取消将 python 默认指向Python 2的做法,因此在明确需要Python 3时,优先输入 python3 是最规范且稳妥的操作习惯。

Linux终端下查看Python版本的常用命令有哪些
图 1:Linux终端下查看与排查Python版本的基本步骤

二、多版本与路径排查:查明执行的具体是哪一个Python

在Linux开发或运维服务器中,系统中经常并存多个Python环境,例如系统自带的Python、用户自行编译安装的Python、以及虚拟环境或Conda环境中的解释器。此时仅看版本号可能无法得知该解释器的具体存放位置。

1. 使用 which 命令定位可执行文件

which 会沿着当前用户的 $PATH 环境变量目录,查找并打印第一个匹配的执行路径:

which python3

示例输出:

/usr/bin/python3

如果想查看环境变量路径中包含的所有匹配文件,可加入 -a 参数:

which -a python3

示例输出:

/usr/local/bin/python3
/usr/bin/python3

这说明 /usr/local/bin/python3 的优先级高于 /usr/bin/python3,终端直接敲击 python3 时会优先执行前者。

2. 使用 type 命令识别别名与内置命令

部分开发者的终端环境中可能设置了 alias(别名)。type 命令可以明确告诉我们当前命令是可执行文件、别名还是函数:

type -a python3

示例输出:

python3 is /usr/bin/python3

如果配置了别名,它会清晰提示 python is aliased to python3。

3. 追踪符号链接(软链接)真实源头

Linux下的 /usr/bin/python3 通常是一个符号链接。为了确认它最终链接到具体哪个小版本的二进制文件,可以使用 readlink:

readlink -f $(which python3)

示例输出:

/usr/bin/python3.10

通过这行命令,可以精确知晓底层真正提供执行能力的二进制实体。

Linux终端下查看Python版本的常用命令有哪些
图 2:Linux下PATH环境变量检索与Python符号链接寻址关系

三、获取详细构建信息:利用Python内部模块

有时仅仅知道 3.10.12 还不够。在编译C扩展库、分析依赖兼容性或处理排错时,往往需要知晓系统的GCC编译版本、位数架构(64位还是32位)以及构建日期。这类信息可以通过直接运行一行Python代码来提取。

1. 使用 sys 模块提取完整信息

利用 -c 参数在终端单行执行Python语句:

python3 -c "import sys; print(sys.version)"

示例输出:

3.10.12 (main, Nov 20 2023, 15:14:05) [GCC 11.4.0]

输出中不仅包含主次版本号,还包含了编译器版本(GCC 11.4.0)及编译时间戳。

如果希望在Shell脚本中只提取结构化的主次版本元组,可执行:

python3 -c "import sys; print(sys.version_info)"

示例输出:

sys.version_info(major=3, minor=10, micro=12, releaselevel='final', serial=0)

2. 使用 platform 模块获得纯净版本号

platform 模块特别适合在CI/CD流水线或自动化Bash脚本中快速赋值变量:

python3 -c "import platform; print(platform.python_version())"

示例输出:

3.10.12

3. 直接进入交互式REPL终端

如果只是临时确认并准备测试语句,直接在终端输入 python3 回车:

python3

进入终端后,首行横幅便会自动显示当前版本号及系统架构:

Python 3.10.12 (main, Nov 20 2023, 15:14:05) [GCC 11.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

确认完毕后输入 exit() 或按快捷键 Ctrl + D 即可退出。

Linux终端下查看Python版本的常用命令有哪些
图 3:Linux下四种常用版本查看方式及信息深度对比

四、常见易错点与注意事项

重要警告:切勿随意修改系统默认的 /usr/bin/python3 软链接!
在 Ubuntu、Debian 或 RHEL 等发行版中,系统核心包管理工具(例如 apt、add-apt-repository、dnf 等)均深度依赖系统自带的 Python 版本(如系统的 3.10)。如果强行修改符号链接使其指向自行编译的 3.11 或 3.12,极易导致系统级包管理器直接崩溃报错。
  • 大小写敏感:在Linux中命令及参数严格区分大小写,务必牢记使用大写 -V 而非小写 -v。
  • 虚拟环境覆盖:一旦运行 source venv/bin/activate 激活了虚拟环境,当前的 $PATH 变量开头会被添加虚拟环境的 bin 目录。此时执行 python3 -V 会输出虚拟环境绑定的版本,退出虚拟环境只需执行 deactivate。
  • 无权限与环境变量缺失:在Cron定时任务或某些无登录Shell中,系统的 PATH 可能只有 /usr/bin:/bin,可能导致自定义路径(如 /usr/local/bin)下的Python无法被识别。编写脚本时建议写入绝对路径(如 /usr/bin/python3)。

五、常用命令速查总结

为了便于在不同场景下快速检索,下表归纳了Linux终端查看Python版本及相关环境的最有效命令:

场景需求 常用命令 输出内容与特点
快速查看版本 python3 -V 或 python3 --version 输出标准版本号(例如 Python 3.10.12)
旧系统兼容查看 python -V 输出Python 2.x版本或系统预设版本
定位执行文件路径 which python3 输出当前默认执行的绝对路径(例如 /usr/bin/python3)
查找所有匹配路径 which -a python3 列出 $PATH 中所有同名的Python可执行文件
穿透追踪软链接 readlink -f $(which python3) 直接解析出底层的具体二进制文件真实路径
自动化脚本提取版本 python3 -c "import platform; print(platform.python_version())" 仅输出无前缀版本字符串(例如 3.10.12),便于变量赋值
排查GCC与编译信息 python3 -c "import sys; print(sys.version)" 提供主版本、GCC版本号及具体构建时间戳
Linux终端下查看Python版本的常用命令有哪些
图 4:Linux终端下Python版本查询全景速查图

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。