如何在脚本中检测Python版本2或3?

时间:2014-12-09 10:40:25

标签: python python-3.x version python-2.x six

我编写了一些脚本,这些脚本只运行版本2.x或者只运行版本3.x的Python。

我如何检测脚本内部,是否以适合Python版本开始?

是否有如下命令:

major, minor = getPythonVersion()

2 个答案:

答案 0 :(得分:10)

sys.version_info提供了使用的Python解释器的版本:

>>> import sys
>>> sys.version_info
sys.version_info(major=2, minor=7, micro=6, releaselevel='final', serial=0)
>>> sys.version_info[0]
2

有关详细信息,请参阅https://docs.python.org/2/library/sys.html

答案 1 :(得分:2)

您可以使用六个库(https://pythonhosted.org/six/),这样可以更轻松地编写处理这两个版本的脚本。 (你有宏六.PY2和六.PY3表示你是否使用python 2 ou 3)

在python 2.6和2.7上:

from __future__ import (print_function, unicode_literals, division)
__metaclass__ = type

在你的文件的顶部允许很多情况下使代码àlathon3 在2和3上工作。