Ahmad Awais

NAVIGATE


SHARE


QuickTip: How to set Python default version to 3.x on macOS?

Ahmad AwaisAhmad Awais

If you are a macOS user like me, you know the default version of Python that comes by default with your mac is version 2.X. Most of the time, you’ll end up needing Python 3.X — which I’m told you can run using the python3 command. But let’s set the default version to Python 3 — so you can run it using the default python command.

Step #1: Install Homebrew#

Homebrew is an excellent package manager for macOS. Install it if you haven’t already by running the following command:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Step #2: Install Python with brew#

The simplest way to get this working is to install Python via brew. Run the following command in your terminal to install Python.

brew install python

It will install Python 3.

Now let’s create the right set of symlinks for Python 3.X so that it becomes the default python command in your macOS. Run the following command:

ls -l /usr/local/bin/python*

This should output something like the following:

/usr/local/bin/python -> /usr/local/bin/python3
/usr/local/bin/python3 -> ../Cellar/python@3.9/3.9.2_1/bin/python3
/usr/local/bin/python3-config -> ../Cellar/python@3.9/3.9.2_1/bin/python3-config
/usr/local/bin/python3.9 -> ../Cellar/python@3.9/3.9.2_1/bin/python3.9
/usr/local/bin/python3.9-config -> ../Cellar/python@3.9/3.9.2_1/bin/python3.9-config

Take a look at the first line. It shows default python being symlinked to the brew installed python3. If you don’t see that in the output, then we can be sure to set it as the default python symlink run the following:

ln -s -f /usr/local/bin/python3 /usr/local/bin/python
And we are all set.

Step #4: Verify python 3.X install#

To make sure we did everything right, let’s reload the shell/terminal — you can do that manually or by running the following command to trigger a reload:

exec $SHELL -l
Tip: I have set an alias for this command to reload the shell, alias reload="exec $SHELL -l" which comes in handy all the time.

Now run the following:

which python

and you should see this output:

/usr/local/bin/python

… and finally, you can run the version check command:

python --version

All this should confirm Python 3.X install, as it outputs Python 3.9.2 for me. Easy peasy lemon squeezy. Use your code for good.

Founder & CEO of ⌘ Command Code, the most used coding agent for open models: 160K+ users, 50K+ paying customers. Founded Langbase (AI cloud for agents with memory & tools).

"What an awesome example for developers." — Satya Nadella, CEO of Microsoft, on my NASA Ingenuity code.

NASA Ingenuity Mars Helicopter code contributor · 6× GitHub Star, one of the first 8 Gold Stars · #1 trending JavaScript developer on GitHub · 6× Google Developer Expert · 6× Microsoft MVP.

Ex VP DevRel & DevTools at RapidAPI · Google Developers Advisory Board (gDAB) founding member · OpenAPI Business Governing Board, Linux Foundation · SF DevNetwork AI/ML Advisory Board · Angel investor (Replit, Resend, Daytona, Gumroad and you?).

Award-winning open source engineering leader: 300+ projects, 50–100M downloads a year, including Shades of Purple (5M+ developers) and corona-cli (10B+ queries).

Taught 217K+ developers via NodeCLI.com and VSCode.pro. 160+ talks. Blogging since 2000, billions of views.

❯ Read more about Ahmad Awais or come say hi on 𝕏 @MrAhmadAwais.

Newsletter

The Developer Takeaway

Founder notes on AI, dev tools, and building developer products. No spam.

247,813+ developers subscribed
Comments 0
There are currently no comments.