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/[email protected]/3.9.2_1/bin/python3
/usr/local/bin/python3-config -> ../Cellar/[email protected]/3.9.2_1/bin/python3-config
/usr/local/bin/python3.9 -> ../Cellar/[email protected]/3.9.2_1/bin/python3.9
/usr/local/bin/python3.9-config -> ../Cellar/[email protected]/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 coding agent with taste. Founded Langbase.com, AI cloud to build, deploy, and scale AI agents with tools & memory · Creator of Command.new.

"Awais is an awesome example for developers" — Satya Nadella, CEO of Microsoft.

NASA Mars Ingenuity Helicopter mission code contributor 8th GitHub Stars Award recipient with 5x GitHub Stars Award (Listed as GitHub's #1 JavaScript trending developer). Google Developers Expert Web DevRel.

Ex VP Eng (DevTools & DevRel) Rapid · Google Developers Advisory Board (gDAB) founding member · AI/ML/DevTools Angel Investor (Replit, Resend, Daytona, Gumroad and you?) ❯ AI/ML Advisory Board San Francisco, DevNetwork.

Award-winning Open Source Engineering leader authored hundreds of open-source dev-tools and software libraries used by millions of developers, including Shades of Purple code theme and corona-cli.

Linux Foundation (Node.js Committee Lead), OpenAPI Business Governing Board. Taught 108K+ developers via NodeCLI.com and VSCode.pro course. 274 million views, blogging for 24 yrs.

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

📨

Developers Takeaway

Stay ahead in the web dev community with Ahmad's expert insights on open-source, developer relations, dev-tools, and side-hustles. Insider-email-only-content. Don't miss out - subscirbe for a dose of professional advice and a dash of humor. No spam, pinky-promise!

✨ 172,438 Developers Already Subscribed
Comments 0
There are currently no comments.