哎呀,说起来这事儿,怎么查看python的版本,看似简单得不能再简单,但对于刚入门那会儿的我来说,简直是一头雾水,甚至到后来,经验多点儿了,有时候因为环境太复杂,不同的项目用不同的版本,也还是会偶尔犯迷糊。版本这东西,屁大点事,但搞不定它,嘿,能让你抓耳挠腮半天,甚至项目都跑不起来。

那会儿,我刚开始学Python,跟着教程装了个Python,高高兴兴地想跑个例子,结果呢,教程里一句 print "Hello" 直接给我报语法错误!当时就懵了,啥情况啊这是?翻来覆去地看代码,没抄错啊!后来一个老鸟同事过来瞄了一眼,噗嗤一声笑了,说:“小伙子,你这是Python 3的解释器吧?教程里那是Python 2的语法!” 啥?Python还有版本这说法?当时真是第一次被版本这个概念狠狠地敲了一记闷棍。从那以后,我就知道,搞清楚自己用的到底是哪个版本的Python,是多么!多么!多么!重要!这是踏入Python世界,或者说任何编程语言世界,最基础也是最关键的一步,没有之一。别看它小,里头的弯弯绕绕,尤其是在不同系统、不同安装方式下,还真有点意思。

所以今天,我就跟你好好掰扯掰扯,到底有哪几种法子,能怎么查看python的版本

首先,最直接、最常用的,也是我个人最喜欢的方法,那就是命令行。无论你用的是Windows、macOS还是Linux,都有个地方能敲命令。Windows上通常是“命令提示符”(cmd)或者“PowerShell”,Mac和Linux上就叫“终端”(Terminal)。打开这个黑乎隆咚的窗口,感觉自己瞬间就成了个黑客,哈哈。

在命令提示符或者终端里,你只需要敲几个简单的字母。最最标准的姿势,是输入:

bash
python --version

然后敲下回车键。不出意外的话,屏幕上就会唰地一下显示出你系统默认或者环境变量指向的那个Python的版本号,比如 Python 3.9.7 或者 Python 2.7.18

但是!这里有个小小的坑。尤其是在Mac和Linux系统上,很多时候系统会自带一个Python,而你自己可能又安装了另一个版本,甚至用 pyenvconda 这些工具装了无数个版本在不同的虚拟环境里。这时候,光敲 python --version 可能不够准确。因为 python 这个命令到底指向哪个可执行文件,是有点讲究的。在很多现代系统或者配置中,python 这个命令默认可能指向的是Python 2(如果是系统自带的话),而Python 3 则需要你明确地敲:

bash
python3 --version

所以,稳妥起见,特别是在你不确定系统环境的情况下,python --versionpython3 --version 都敲一遍是个好习惯。看看出来的版本号是不是一样的,或者说,看看哪个命令能跑出你“想要”或者“以为”的那个版本。有时候还会遇到输入 python 或者 python3 命令后,系统提示“命令未找到”。这通常是环境变量的问题,意味着系统不知道你去哪里找 python 这个程序。这个问题稍微复杂一点点,但也是可解的,通常就是把Python安装目录下的Scripts(或者bin)文件夹路径加到系统的PATH环境变量里。不过今天咱们主旋律是怎么“查看”版本,环境变量的问题就按下不表,但遇到这个问题,你起码知道是为啥了,对吧?

话说回来,命令行这招,效率是最高的,你不用打开任何花里胡哨的软件,直接就能知道。尤其是在服务器上或者远程操作时,命令行查看版本几乎是唯一的选择,快刀斩乱麻。

除了命令行,如果你已经身处Python的世界里了,比如你已经打开了Python的交互式环境(就是那个 >>> 提示符闪啊闪的地方),或者你正在写代码,想在代码里查,那又另有妙招。

在Python的交互式环境里查看。怎么进去交互式环境?简单,在刚才那个命令行窗口里,直接输入 python 或者 python3 回车就行了。然后你就会看到 >>> 的提示符,恭喜你,你已经进入了Python的王国。在这个王国里,你可以实时输入Python代码并执行。要查看版本?你需要请出Python标准库里的一个模块,叫做 syssys 模块提供了访问解释器的一些变量和函数的功能。其中就包含了版本信息。

你只需要敲两行代码:

python
import sys
print(sys.version)

敲完 import sys 回车,再敲 print(sys.version) 回车,屏幕上就会输出详细的版本信息,包括版本号、编译信息等等。比如可能是这样一长串:3.9.7 (default, Sep 16 2021, 16:59:27) [GCC 11.2.0]。这个方法的好处是,它显示的是当前正在运行的这个Python解释器的版本。如果你是通过 python 命令进入的,那就是 python 命令指向的那个解释器;如果是通过 python3 进入的,那就是 python3 指向的那个。这比命令行直接看要更精确地告诉你,你当前正在使用的Python版本到底是什么。

再来一个,有时候你可能不想打开命令行,或者你已经在某个Python脚本里工作了,想让脚本自己知道自己的版本。这种时候,你可以在Python脚本里写代码来查看版本。这其实跟在交互式环境里差不多,就是把那两行代码写到一个 .py 文件里,然后运行这个文件。

新建一个文件,比如叫做 check_version.py,然后把下面这两行代码复制粘贴进去:

python
import sys
print(f"当前使用的Python版本是: {sys.version}")

保存文件。然后回到命令行,导航到你保存这个文件的目录,运行这个脚本:

bash
python check_version.py

或者

bash
python3 check_version.py

根据你希望用哪个版本的解释器来执行它。运行后,命令行就会输出那句“当前使用的Python版本是: ”加上详细的版本信息。这个方法特别适合自动化或者在复杂的项目环境中,让程序自己去判断环境信息。比如,你可以写段代码,检查当前Python版本是否满足某个库的要求,如果不满足就给个提示或者直接退出。这比你手动去查要智能得多。

现在很多朋友开发都依赖强大的集成开发环境(IDE),比如Pycharm、VS Code(装了Python插件后)、Spyder等等。这些IDE通常会帮你管理和配置Python解释器。在IDE里查看当前项目或者IDE默认使用的Python版本也是一个非常直观的方式。不同的IDE位置不太一样,但大同小异。

拿最流行的Pycharm来说,你打开一个项目后,通常可以在顶部菜单栏或者设置/首选项(Preferences/Settings)里找到跟“Project Interpreter”(项目解释器)相关的选项。点进去一看,里面清清楚楚地列出了这个项目当前配置使用的是哪个Python解释器,包括它的路径和版本号。比如,它会显示 /Users/yourname/.pyenv/versions/3.9.7/bin/python 这样的路径,旁边跟着 Python 3.9.7。在VS Code里,你打开一个Python文件后,屏幕的左下角状态栏通常会显示当前选中的Python解释器版本,你点那里还能切换。

在IDE里看,好处是跟你的项目紧密关联。你知道你写的这段代码,最终会跑在哪个版本的Python上。这对于避免版本兼容性问题特别有帮助。比如你用Pycharm给一个老项目配的是Python 3.6的解释器,那你写代码时就会下意识地避开Python 3.7、3.8、3.9里才有的新特性,以免到时候部署出问题。

聊了这么多怎么查看python的版本的方法,你可能觉得,“不就是看个版本号吗?有必要这么麻烦,这么多方法?” 哎,你别说,版本这东西,真没你想的那么简单。Python 2和Python 3之间的差异,那是一道鸿沟,像 print 语句变函数,字符串默认编码变Unicode,库的兼容性等等,随便一个都能把你搞到怀疑人生。现在Python 2已经被官方放弃了(2020年就停止维护了),按理说大家应该都用Python 3了。但谁还没维护过几个老项目呢?或者某些遗留系统就是跑在Python 2上。所以,搞清楚是Python 2还是Python 3,这是生死攸关的第一步。

就算都是Python 3,比如 3.6、3.7、3.8、3.9、3.10,甚至马上要出的3.11、3.12,它们之间也有很多细节差异。新的版本会引入新的语法特性(比如3.8的海象运算符 :=,3.9的字典合并 |),性能优化,以及标准库的更新。更要命的是,很多第三方库对Python版本有明确的要求。比如某个深度学习框架可能要求Python >= 3.7 and < 3.10。你要是用3.6或者3.10装,对不起,装不上,或者装上了也跑不了。

我记得有一次,赶着上线一个新功能,在自己电脑(Python 3.9)上跑得好好的,信心满满地部署到测试服务器上,结果日志里全是错误。查了半天,才发现测试服务器上的Python环境是3.6!代码里用了3.7才有的语法糖,直接爆炸。那晚上加班加点,就是为了把代码里的新语法改回3.6兼容的写法。这种经历一次就够了,真的太操心了。

所以,怎么查看python的版本,这不是一个简单的技术操作,它背后关联的是你对开发环境的理解,是你解决问题、避免踩坑的基本功。遇到问题了,尤其是什么“ModuleNotFoundError”(模块找不到)啦,“SyntaxError”(语法错误)啦,或者装不上库啦,第一个念头,真应该去查看python的版本,看看是不是版本不匹配惹的祸。很多时候,找到原因那一刻,你会发现,“哦,原来是这样!” 很多看似玄学的bug,其实都是版本这个“小鬼”在作怪。

总而言之,无论是通过命令行、交互式环境、写个小脚本,还是看IDE的配置,掌握至少一到两种查看python的版本的方法,并且在遇到问题时有意识地去检查版本,这能帮你省下大量的Debug时间,让你在Python的学习和开发之路上少走很多弯路。别小看这几行简单的命令或者代码,它们可是你顺畅编程的有力保障。时不时地看看你的环境,确保一切都在你的掌控之中,你会发现,编程这事儿,也能没那么让人头大。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。