priya priya - 1 month ago 17
Python Question

Detect Python version at runtime

I have a Python file which might have to support Python versions

< 3.x and > 3.x
. Is there a way to introspect the Python runtime to know the version in which it is running (for example,
2.6 or 3.2.x
)?

Answer

Sure, take a look at sys.version and sys.version_info.

For example, to check that you are running Python 3.x, use

import sys
if sys.version_info[0] < 3:
    raise "Must be using Python 3"

Here, sys.version_info[0] is the major version number. sys.version_info[1] would give you the minor version number.

In Python 2.7 and later, the components of sys.version_info can also be accessed by name, so the major version number is sys.version_info.major.

See also Python: Best way to check for Python version in program that uses new language features?

Comments