如何检查哪个版本的Python解释器正在运行我的脚本?
当前回答
如果你想检测python 3之前的版本,但不想导入任何东西…
...你可以(ab)使用列表理解范围的变化,并在一个表达式中完成:
is_python_3_or_above = (lambda x: [x for x in [False]] and None or x)(True)
其他回答
你最好的选择可能是这样的:
>>> import sys
>>> sys.version_info
(2, 6, 4, 'final', 0)
>>> if not sys.version_info[:2] == (2, 6):
... print "Error, I need python 2.6"
... else:
... from my_module import twoPointSixCode
>>>
此外,您总是可以在一个简单的try中包装导入,这应该会捕获语法错误。而且,按照@Heikki的观点,这段代码将与更老版本的python兼容:
>>> try:
... from my_module import twoPointSixCode
... except Exception:
... print "can't import, probably because your python is too old!"
>>>
下面是一个简短的命令行版本,它可以直接退出(方便脚本和自动执行):
python -c "print(__import__('sys').version)"
或者只是大调、小调和微调:
python -c "print(__import__('sys').version_info[:1])" # (2,)
python -c "print(__import__('sys').version_info[:2])" # (2, 7)
python -c "print(__import__('sys').version_info[:3])" # (2, 7, 6)
import sys
sys.version.split(' ')[0]
sys。版本给你你想要的,只是选择第一个数字:)
对于windows,进入命令提示符并键入此命令以获取python版本:
python --version
Or
python -V
尝试使用os。Popen在变量中读取它:
import os
ver = os.popen('python -V').read().strip()
print(ver)