我编写了一些脚本,它们要么仅使用 2.x 版运行,要么仅使用 Python 3.x 版运行。
如果脚本是从拟合 Python 版本开始的,我如何检测脚本内部?
有没有类似的命令:
major, minor = getPythonVersion()
我编写了一些脚本,它们要么仅使用 2.x 版运行,要么仅使用 Python 3.x 版运行。
如果脚本是从拟合 Python 版本开始的,我如何检测脚本内部?
有没有类似的命令:
major, minor = getPythonVersion()
sys.version_info
提供使用的 Python 解释器的版本。
蟒蛇2
>>> import sys
>>> sys.version_info
sys.version_info(major=2, minor=7, micro=6, releaselevel='final', serial=0)
>>> sys.version_info[0]
2
蟒蛇 3
>>> import sys
>>> sys.version_info
sys.version_info(major=3, minor=7, micro=10, releaselevel='final', serial=0)
>>> sys.version_info[0]
3
有关详细信息,请参阅文档。
您可以使用这六个库 ( https://pythonhosted.org/six/ ) 来更轻松地编写适用于两个版本的代码。(它包括两个布尔值six.PY2
,six.PY3
指示代码是在 Python 2 还是 Python 3 中运行)
同样在 Python 2.6 和 2.7 中,您可以使用
from __future__ import (print_function, unicode_literals, division)
__metaclass__ = type
以适用于 2 和 3 的方式启用某些 Python 3 行为。