- What version of Python do I have?
- 9 Answers 9
- How to Check Your Python Version
- Check Python Version: Command Line
- Windows
- macOS
- Linux
- Check Python Version: Script
- Python 2 or Python 3?
- Time to Practice Python!
- How to Check Python Version in Linux, Mac, & Windows
- How to Check Python Version in Linux
- How to Check Python Version in Windows
- How to Check Python Version in MacOS
- Checking a System with Multiple Versions of Python
- How to Check Python Version in Script
What version of Python do I have?
@TejasKale Better to run ls /usr/bin/python* (or ls /usr/bin/*python* if you really want files with python anywhere in the name). That way, ls still formats its output for a terminal (and you get multiple columns and, with the default ls alias in Ubuntu, colorization).
9 Answers 9
You can use python -V (et al.) to show you the version of Python that the python command resolves to. If that’s all you need, you’re done. But to see every version of python in your system takes a bit more.
In Ubuntu we can check the resolution with readlink -f $(which python) . In default cases in 14.04 this will simply point to /usr/bin/python2.7 .
We can chain this in to show the version of that version of Python:
$ readlink -f $(which python) | xargs -I % sh -c 'echo -n "%: "; % -V' /usr/bin/python2.7: Python 2.7.6
But this is still only telling us what our current python resolution is. If we were in a Virtualenv (a common Python stack management system) python might resolve to a different version:
$ readlink -f $(which python) | xargs -I % sh -c 'echo -n "%: "; % -V' /home/oli/venv/bin/python: Python 2.7.4
The fact is there could be hundreds of different versions of Python secreted around your system, either on paths that are contextually added, or living under different binary names (like python3 ).
If we assume that a Python binary is always going to be called python and be a binary file, we can just search the entire system for files that match those criteria:
$ sudo find / -type f -executable -iname 'python*' -exec file -i '<>' \; | awk -F: '/x-executable; charset=binary/ ' | xargs readlink -f | sort -u | xargs -I % sh -c 'echo -n "%: "; % -V' /home/oli/venv/bin/python: Python 2.7.4 /media/ned/websites/venvold/bin/python: Python 2.7.4 /srv/chroot/precise_i386/usr/bin/python2.7: Python 2.7.3 /srv/chroot/trusty_i386/usr/bin/python2.7: Python 2.7.6 /srv/chroot/trusty_i386/usr/bin/python3.4: Python 3.4.0 /srv/chroot/trusty_i386/usr/bin/python3.4m: Python 3.4.0 /usr/bin/python2.7: Python 2.7.6 /usr/bin/python2.7-dbg: Python 2.7.6 /usr/bin/python3.4: Python 3.4.0 /usr/bin/python3.4dm: Python 3.4.0 /usr/bin/python3.4m: Python 3.4.0 /web/venvold/bin/python: Python 2.7.4
It’s obviously a pretty hideous command but this is again real output and it seems to have done a fairly thorough job.
How to Check Your Python Version
Chances are you have heard about Python 2 and Python 3. Although they are two versions of the same language, they have different syntax; code written in Python 3 might not work in Python 2. So, let’s discover how you can check your Python version on the command line and in the script on Windows, macOS, and Linux systems.
Python is one of the most popular programming languages. With its simple syntax, high productivity, and amazing open-source libraries, Python can be used for just about anything.
However, you might have seen that some people use Python 2, while others prefer Python 3. The difference between these two versions is quite significant – it’s not just about fixing some bugs and adding a few new features. If the application is written in Python 2, you may not be able to run it using Python 3.
So, you should definitely know the version of Python installed on your computer. Let’s see how you can check the Python version. We’ll start with the command line.
Check Python Version: Command Line
You can easily check your Python version on the command line/terminal/shell. Let’s first recall how we can access the command line in different operating systems.
Windows
macOS
Linux
Then, for any of the operations systems above, you simply type python —version OR python -V, on the command line and press Enter . You’ll get a result like this:
python --version Python 3.8.3 python -V Python 3.8.3
Depending on your Python distribution, you may get more information in the result set. However, the number next to Python is the version number, which is what we are looking for. In this case, the full version number is 3.8.3.
Usually, we are interested in the major version – Python 2 or Python 3. This is indicated by the first number of the full version number. This number is 3 in our case, which means that we have Python 3 installed on our computer.
Starting from Python 3.6, you can also use python -VV (this is two Vs, not a W) to get more detailed information about your Python version:
python -VV Python 3.8.3 (default, Jul 2 2020, 17:30:36) [MSC v.1916 64 bit (AMD64)]
Check Python Version: Script
Sometimes you may want to check the version of Python when you are coding an application (i.e. inside the script). This is especially useful when you have multiple Python versions installed on your computer. To check which Python version is running, you can use either the sys or the platform module. The script will be the same for Windows, macOS, and Linux.
To check the Python version using the sys module, write:
import sys print (sys.version)
# 3.8.3 (default, Jul 2 2020, 17:30:36) [MSC v.1916 64 bit (AMD64)]
To check the Python version using the platform module, use the following code:
import platform print(platform.python_version())
The output will be as follows:
Both code snippets output the Python version in the string format. If necessary, you can also get the version number in the tuple format. The tuple will contain five components: major, minor, micro, release level, and serial:
print (sys.version_info) # sys.version_info(major=3, minor=8, micro=3, releaselevel='final', serial=0)
Of course, you can easily obtain the individual components of this tuple using an index (e.g. sys.version_info[0] ) or a name (e.g. sys.version_info.major ).
Pretty simple, right? No wonder Python is so popular.
Python 2 or Python 3?
Now we know how to check the Python version. But what’s the difference between the two versions?
Python 2 is an older version that was actively used in software development and IT operations (DevOps). However, it is no longer under development and has been discontinued starting from January 1, 2020. This implies that any bugs or security problems discovered in Python 2 are no longer being addressed by Python developers. Python’s volunteer developers advise that people using Python 2 move to Python 3 as soon as possible.
Python 3 was first introduced in 2008. It’s syntax and behavior is quite different from Python 2, but it’s generally believed that Python 3 is simpler and easier to understand.
As Python 2 is no longer supported, you should definitely choose Python 3 if you are writing a new application or just starting to learn Python. The only reason to learn Python 2 is if your company’s code is written in Python 2 and you need to work with it. This shouldn’t be often the case, especially once Python 2 has been discontinued for a while.
Time to Practice Python!
Do you want to learn Python 3? Join the track Learning Programming with Python on LearnPython.com, where you will be introduced to the fundamentals of programming – not just in theory but with over 400 interactive coding challenges.
The track starts with Python Basics: Part 1, a course that teaches students how to create the simplest Python applications. This course (and the track itself) are aimed at students with no prior IT background. If you are already familiar with Python’s basics, join one of the advanced courses on LearnPython.com and learn how to work with strings, JSON files, and CSV files in Python.
Professionals across different industries enjoy the benefits of this simple and effective programming language. You can join them very soon! It doesn’t take much time to become proficient in Python, especially if you plan your studying activities appropriately.
Thanks for reading, and happy learning!
How to Check Python Version in Linux, Mac, & Windows
Python is a popular programming language. Like many other programming languages, there can be several different versions organized by release date. Certain applications may require a specific version of Python.
In this tutorial, learn how to check the Python version on Windows, Linux, or macOS systems.
Access to a command-line/terminal window:
- Linux: Ctrl-Alt-T, Ctrl-Alt-F2
- Windows: Win+R > type powershell > Enter/OK
- MacOS: Finder > Applications > Utilities > Terminal
There are different versions of Python, but the two most popular ones are Python 2.7.x and Python 3.7.x. The x stands for the revision level and could change as new releases come out.
When looking at the version number, there are usually three digits to read:
While major releases are not fully compatible, minor releases generally are. Version 3.6.1 should be compatible with 3.7.1 for example. The final digit signifies the latest patches and updates.
Python 2.7 and 3.7 are different applications. Software that’s written in one version often will not work correctly in another version. When using Python, it is essential to know which version an application requires, and which version you have.
Python 2 will stop publishing security updates and patches after 2020. They extended the deadline because of the large number of developers using Python 2.7. Python 3 includes a 2 to 3 utility that helps translate Python 2 code into Python 3.
How to Check Python Version in Linux
Most modern Linux distributions come with Python pre-installed.
To check the version installed, open a terminal window and entering the following:
How to Check Python Version in Windows
Most out-of-the-box Windows installations do not come with Python pre-installed. However, it is always a good idea to check.
Open Windows Powershell, and enter the following:
If you have Python installed, it will report the version number.
Alternately, use the Windows Search function to see which version of Python you have:
Press the Windows key to start a search, then type Python. The system will return any results that match. Most likely a match will show something similar to:
This defines which major and minor revision (3.x or 2.x) you are using.
How to Check Python Version in MacOS
If using a MacOS, check the Python version by entering the following command in the terminal:
The system will report the version.
Note: In some cases, this will return a screen full of information. If that happens, just scan through the file locations for the word python with a number after it. That number is the version.
Checking a System with Multiple Versions of Python
Python2 and Python3 are different programs. Many programs upgrade from the older version to the newer one. However, Python 2.7.x installations can be run separately from the Python 3.7.x version on the same system.
Python 3 is not entirely backward compatible.
To check for Python 2.7.x:
To check the version of Python 3 software:
Most systems differentiate Python 2 as python and Python 3 as python3. If you do not have Python 2, your system may use the python command in place of python3 .
Note: Python does not have a built-in upgrade system. You’ll need to download the latest version and install it.
How to Check Python Version in Script
When writing an application, it is helpful to have the software check the version of Python before it runs to prevent crashes and incompatibilities.
Use the following code snippet to check for the correct version of Python:
if not sys.version_info.major == 3 and sys.version_info.minor >= 6: print("Python 3.6 or higher is required.") print("You are using Python <>.<>.".format(sys.version_info.major, sys.version_info.minor)) sys.exit(1)
When this script runs, it will test to see if Python 3.6 is installed on the system. If not, it will send a notification and displays the current Python version.
Note: One of the common issues in working with Python and datasets is missing data. Learn how to handle missing data in Python.
You should now have a solid understanding of how to check for the version of Python installed in several different operating systems. Python is a powerful programming language, thus it’s important to understand its different versions.
If you want to learn how to upgrade Python to a newer version on Wondows, macOs, and Linux, check our article how to upgrade Python to 3.9.