Install both python 2 and 3 mac

Install both python 2 and 3 mac

Step 1: Install Python3

Use brew install python to install python3 on the mac, current version is Python 3.6.5. If your mac has a python2 already, brew will ask for an upgrade, which is fine.

# Going to install python3brew install python# Going to upgradebrew upgrade python

Step 2: Install Python2

Homebrew does provide a python2 version, which you can install by

# Going to install python2brew install python@2

After finished the above two steps, now you can have:

# python and python2 are now referring to Python 2.7.15➜  ~ pythonPython 2.7.15 (default, Jun  9 2018, 23:00:09)[GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.1)] on darwinType "help", "copyright", "credits" or "license" for more information.>>>➜  ~ python2Python 2.7.15 (default, Jun  9 2018, 23:00:09)[GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.1)] on darwinType "help", "copyright", "credits" or "license" for more information.>>># python3➜  ~ python3Python 3.6.5 (default, Jun  9 2018, 22:53:53)[GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.1)] on darwinType "help", "copyright", "credits" or "license" for more information.>>>

One More Thing: Use `virtualenv

# To use virualenv for python2virtualenv -p python2 env_name# Then in the installpip2 install lib_name#To use virualenv for python3virtualenv -p python3 env_name# Then in the installpip3 install lib_name

Reference

There are ways to use both , but the simplest solution today is to use pyenv. pyenv allows easy switching between versions. Here is what I did to set up:

STEP1:

Remove all pythons from your mac

 brew uninstall --ignore-dependencies --force python
 sudo rm -rf ~/miniconda3/
 sudo rm -rf ~/.conda/

Remove the following from ~/.bash_profile

export PATH="/Users/ishandutta2007/miniconda3/bin:$PATH"

and also the following from ~/.bashrc

export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH
export PYTHONPATH=/usr/local/lib/python2.7/site-packages/google:$PYTHONPATH
alias python="/usr/bin/python"

STEP2:

Install pyenv and the python versions you need

brew update
brew install pyenv
pyenv install 2.7
pyenv install 3.7.0

STEP3:

add pyenv init to bash_profile or bashrc

echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.bash_profile

STEP4:

Check what got installed

pyenv versions
  • system (set by /Users/ishandutta2007/.pyenv/version)

    2.7

    3.7.0

STEP5:

Choose a default

pyenv global 3.7.0

When a project needs older version, just go its root folder and run

pyenv local 2.7

Install both python 2 and 3 mac

Mac OS X comes with Python 2.7 out of the box.

You do not need to install or configure anything else to use Python. Having said that, I would strongly recommend that you install the tools and libraries described in the next section before you start building Python applications for real-world use. In particular, you should always install Setuptools, as it makes it much easier for you to install and manage other third-party Python libraries.

The version of Python that ships with OS X is great for learning, but it’s not good for development. The version shipped with OS X may be out of date from the official current Python release, which is considered the stable production version.

Doing it Right¶

Let’s install a real version of Python.

Before installing Python, you’ll need to install a C compiler. The fastest way is to install the Xcode Command Line Tools by running xcode-select --install. You can also download the full version of Xcode from the Mac App Store, or the minimal but unofficial OSX-GCC-Installer package.

Note

If you already have Xcode installed, do not install OSX-GCC-Installer. In combination, the software can cause issues that are difficult to diagnose.

Note

If you perform a fresh install of Xcode, you will also need to add the commandline tools by running xcode-select --install on the terminal.

While OS X comes with a large number of Unix utilities, those familiar with Linux systems will notice one key component missing: a decent package manager. Homebrew fills this void.

To install Homebrew, open Terminal or your favorite OS X terminal emulator and run

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

The script will explain what changes it will make and prompt you before the installation begins. Once you’ve installed Homebrew, insert the Homebrew directory at the top of your PATH environment variable. You can do this by adding the following line at the bottom of your ~/.profile file

export PATH="/usr/local/bin:/usr/local/sbin:$PATH"

Now, we can install Python 2.7:

Because python@2 is a “keg”, we need to update our PATH again, to point at our new installation:

export PATH="/usr/local/opt/python@2/libexec/bin:$PATH"

Homebrew names the executable python2 so that you can still run the system Python via the executable python.

$ python -V   # Homebrew installed Python 3 interpreter (if installed)
$ python2 -V  # Homebrew installed Python 2 interpreter
$ python3 -V  # Homebrew installed Python 3 interpreter (if installed)

Virtual Environments¶

A Virtual Environment (commonly referred to as a ‘virtualenv’) is a tool to keep the dependencies required by different projects in separate places, by creating virtual Python environments for them. It solves the “Project X depends on version 1.x but, Project Y needs 4.x” dilemma, and keeps your global site-packages directory clean and manageable.

For example, you can work on a project which requires Django 1.10 while also maintaining a project which requires Django 1.8.

To start using this and see more information: Virtual Environments docs.


This page is a remixed version of another guide, which is available under the same license.

Can I have Python 2 and 3 installed at the same time Mac?

You can have both versions installed at the same time.

Can I have both Python 2 and 3?

We can have both Python 2 and Python 3 installed on any Windows or Linux device. We can either create different environments on different IDEs to use the versions separately or use the following ways to run them using the command prompt.

Can I have multiple versions of Python installed on Mac?

With pyenv you can install multiple Python versions on your machine and easily switch between them. Note: this article is geared towards Mac users, and especially Apple Silicon Mac users. Linux users might benefit from the pyenv tutorial, but Windows users are out of luck — pyenv does not officially support Windows.

Does pip install for both Python 2 and 3?

In this article, learn how to install pip on Ubuntu. Note: If you are using Python in a virtual environment created with pyvenv or virtualenv, then pip is available regardless of the version of Python in use. This also applies to Python 2.7. 9 or newer (Python series 2) and Python 3.4 or later (Python series 3).