如何检查哪个版本的Python解释器正在运行我的脚本?


当前回答

可以这样写:

#!/usr/bin/env/python
import sys
if sys.version_info<(2,6,0):
  sys.stderr.write("You need python 2.6 or later to run this script\n")
  exit(1)

在你的脚本顶部。

请注意,根据脚本中的其他内容,比目标版本更老的python甚至可能无法加载脚本,因此不会报告此错误。作为一种变通方法,您可以在一个脚本中运行上述操作,该脚本导入了更现代的代码。

其他回答

对于windows,进入命令提示符并键入此命令以获取python版本:

python --version

Or

python -V

从stdlib中使用平台的python_version:

from platform import python_version
print(python_version())

# 3.9.2

检查Python版本:Python -V或Python——version或apt-cache policy Python

你也可以运行whereis python查看安装了多少个版本。

可以这样写:

#!/usr/bin/env/python
import sys
if sys.version_info<(2,6,0):
  sys.stderr.write("You need python 2.6 or later to run this script\n")
  exit(1)

在你的脚本顶部。

请注意,根据脚本中的其他内容,比目标版本更老的python甚至可能无法加载脚本,因此不会报告此错误。作为一种变通方法,您可以在一个脚本中运行上述操作,该脚本导入了更现代的代码。

from sys import version_info, api_version, version, hexversion

print(f"sys.version: {version}")
print(f"sys.api_version: {api_version}")
print(f"sys.version_info: {version_info}")
print(f"sys.hexversion: {hexversion}")

输出

sys。版本:3.6.5 (v3.6.5:f59c0932b4, march 28 2018, 17:00:18) [MSC .1900 64位(AMD64)] sys。api_version: 1013 sys。version_info: sys。Version_info (major=3, minor=6, micro=5, releaslevel ='final', serial=0) sys。hexversion: 50726384