Skip to content

Does Apple support Python?

Headshot of Andrea Pepper, SimpleMDM writer and MacAdmin
Andrea Pepper|March 13, 2025
generalnewbanner
generalnewbanner

Python has been a widely used programming language among macOS users for years. But as Apple’s approach to Python has evolved, some may wonder: Does Apple still support Python? 

Yes, Apple still supports Python, but it’s made some significant changes. Apple has “unbundled” Python from macOS since transitioning from macOS Monterey to Catalina. macOS remains fully compatible with Python 3, but modern macOS systems no longer come with a system-level Python preinstalled — you’ll have to install it yourself. And if you do, be sure to update your scripts and tools to be compatible with Python 3, as Python 2 is no longer maintained.

I’ll break down the history of Python and macOS, then walk you through how to get Python up and running on your machine.

If you need Python on modern macOS versions, you’ll need to:

  • Manually install the latest Python version.

  • Update scripts and tools to be compatible with Python 3, as Python 2 is no longer maintained.

Python versions

Python was created by Guido van Rossum and first released in 1991 (so it’s as old as I am). Today, you’ll mostly hear of two main Python versions: Python 2 and Python 3.

Python 2

Python 2, released in 2000, was a cornerstone of programming for nearly two decades. However, it reached its end of life (EOL) on January 1, 2020, meaning it no longer receives updates, bug fixes, or security patches. This makes continued use of Python 2 a significant risk to information security (infosec) and compliance.

Apple officially removed Python 2.7 from macOS starting with macOS 12.3, following its 2019 announcement to deprecate it. Python 2 had been bundled with macOS since version 10.8, so its removal marked a major shift for developers and IT admins accustomed to having it preinstalled.

What you need to know:

  • Python 2 is no longer preinstalled on macOS.

  • You cannot download Python 2 from python.org as it is officially unsupported.

  • If you still need Python 2, you can use workarounds like installing it via Homebrew, but even this method may face deprecation.

  • Python 2 has been largely replaced by Python 3, which offers enhanced features, performance, and ongoing support.

Python 3

Python 3, released in 2008, is the latest version of the Python programming language. It was designed to improve upon Python 2, introducing cleaner syntax, enhanced performance, and new features while resolving inconsistencies in its previous version.

At the time of writing, the latest version of Python is 3.14

What you need to know: 

  • Python 3 is also not preinstalled on macOS but is easy to install.

  • Python 3 is recommended for modern development, offering better performance, security, and compatibility.

  • If you’re developing something new, always use Python 3 since Python 2 is obsolete and unsupported.

SimpleMDM Favicon

Streamline your Apple device management

Try SimpleMDM free for 30 days to see how the ultimate Apple MDM helps you manage your fleet with ease.

How to check if Python is installed

If you’re unsure whether Python is installed on your system, you can quickly check using the Terminal.

This method is actually a troubleshooting hack for checking whether various software is installed on your system.

For example:

If you’re not sure if you have Homebrew installed, you run brew --version

See what I did there? 

How to check Python version with Terminal

To check the installed version of Python, use the following command in Terminal: 

python3 --version

or

python3 -V

Screenshot of the current output on my machine, which has the latest version of Python installed.

The output in the image shows that I have Python version 3.13.2

If your system has both Python 2 and Python 3 installed, python3 --version checks for Python 3 specifically.

The deprecated method to invoke Python 2 is:

python --version

or 

python -V

In my experience, this input typically provides the output of: command not found: python

This is because many modern systems no longer include python as a command by default due to Python 2 being deprecated. 

What you need to know: 

  • Use python --version or python3 --version to check the installed Python version. 

  • If no version is displayed, Python is not installed or not correctly configured in your system’s PATH

How to install Python

If you checked the Python version in Terminal and received no response, it’s time to install Python manually.

Here’s how:

  1. Download from python.org

    • The simplest way to install Python is to download the latest version directly from the official Python website. The installer includes everything you need to get started.

  2. Install via Homebrew

    • If you prefer using a package manager, you can install Python with Homebrew by inputting this command into Terminal:

brew install python

Want to dive deeper into Python? Check out The Python Tutorial documentation. 

Update your environment to Python 3

With Apple no longer bundling Python 2 or Python 3 with macOS, admins need to adapt their deployment strategies. Here’s how to ensure a smooth transition:

  1. Audit your scripts and packages

    • Ensure that any custom install scripts (pre, post, or audit) or third-party packages you run do not rely on Python 2.

    • Use tools like pkgcheck to identify deprecated dependencies in .pkg files.

  2. Manage Python environments

    • For developers: Encourage developers to manage their own Python environments for day-to-day development. Provide support, but let them handle their specific Python versions and dependencies.

    • For admins: Focus on managing the Python version used to run your enterprise fleet, ensuring it’s up-to-date and secure.

Admin tools

Utilizing software tools can help streamline the process of fully transitioning to Python 3, allowing your workflows to remain efficient and future-proof.

  1. Use /usr/bin/env python3: Use /usr/bin/env python3 in your scripts for better cross-version support.

  2. Use pkgcheck: pkgcheck is a command-line tool for macOS admins to inspect .pkg installer files for deprecated dependencies, such as Python 2.7. This helps identify compatibility issues before upgrading to newer macOS versions, ensuring smoother transitions and avoiding broken packages.

  3. Use 2to3: 2to3 is a Python tool that helps developers transition code from Python 2 to Python 3. It automates the conversion of Python 2 syntax and libraries to their Python 3 equivalents, addressing key differences like print statements, integer division, and Unicode handling. While it simplifies the migration process, manual review and testing are still recommended to ensure compatibility.

TL;DR:

  • Apple has “unbundled” Python from macOS since transitioning from macOS Monterey to Catalina.

  • macOS remains fully compatible with Python 3, but don’t rely on modern macOS systems to install a system-level Python.

  • Update your scripts and tools to be compatible with Python 3, as Python 2 is no longer maintained.

But hey, at the end of the day, it doesn’t really matter because, as the legendary MacDevOps developer and open-source author Joel Rennick says, “Go is better than Python” anyway. XD


FAQs about Python

What is Python?

Python is a versatile, high-level programming language known for its simplicity and readability. It’s widely used for web development, DevOps, data analysis, artificial intelligence, and automation.

Does Python come preinstalled on macOS?

No, Python does not come preinstalled on macOS anymore. But if your Mac previously ran macOS Monterey 12.2 or earlier, Python may still be installed on the system.

Historically, Python 2.7 was included with macOS by default. However, starting with macOS 12.3, Apple removed Python 2.7 following its 2019 deprecation announcement. This change reflects Apple’s effort to phase out outdated software and modernize its ecosystem. 

Headshot of Andrea Pepper, SimpleMDM writer and MacAdmin
Andrea Pepper

Andrea Pepper is an Apple SME MacAdmin with a problematic lack of impulse control around a software update prompt. When not poking at machines, Pepper enjoys being a silly goose in sunny Colorado with her two gigantic fluffer pups.

Related articles