Make python3 as my default python on Mac
Before we make the changes, the default version of python in my system was python 2.7.17.
python --version
Python 2.7.17
To make python3 as default python by replacing python2 in Ubuntu.
- Open Terminal
cd
nano ~/.bashrc
alias python=python3
(Add this line on top of .bashrc file)- Press
ctr+o
(To save the file) - Press
Enter
- Press
ctr+x
(To exit the file) source ~/.bashrc
OR. ~/.bashrc
(To refresh the bashrc file)
python --version
Python 3.7.5
Changing the default python version system wide can break some applications that depend on python2
. The alternative solution would be to create an alias
.
If you are using zsh (the default on Mac OS
) run the following from terminal:
echo 'alias python="python3"' >> ~/.zshrc
Probably the safest and easy way is to use brew and then just modify your PATH
:
First update brew:
brew update
Next install python:
brew install python
That will install and symlink python3 to python, for more details do:
brew info python
Look for the Caveats:
==> Caveats
Python has been installed as
/usr/local/bin/python3
Unversioned symlinks `python`, `python-config`, `pip` etc. pointing to
`python3`, `python3-config`, `pip3` etc., respectively, have been installed into
/usr/local/opt/python/libexec/bin
Then add to your path /usr/local/opt/python/libexec/bin
:
export PATH=/usr/local/opt/python/libexec/bin:$PATH
The order of the PATH
is important, by putting first the /usr/local/opt/python/libexec/bin
will help to give preference to the brew install (python3) than the one is in your system located in /usr/bin/python
According to this S.O. post, changing the default Python interpreter could possibly break some applications that depend on Python 2.
The post also refers to using aliasing as a solution, and this link might also be a good reference on how to do that.
Personally, I just type "Python3" before I run scripts or go into a shell environment instead of "python".