Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
How to install Python correctly on Mac OSX

Install Homebrew

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

Add PATH to ~/.bash_profile and ~/.zshrc

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

Install Python

brew install python

Add PATH to ~/.bash_profile and ~/.zshrc

export PATH=/usr/local/share/python:$PATH

Install helpful modules

pip install virtualenv
pip install virtualenvwrapper
pip install numpy
brew install gfortran
pip install scipy
brew install freetype
pip install matplotlib
pip install ipython[all]

QT for Python

For QT integration you need to download QT SDK and then PyQT

brew install pyqt

After installing pyqt, Homebrew will prompt you to add the following to your .bash_profile:

export PYTHONPATH=/usr/local/lib/python:$PYTHONPATH

Keep installing dependences for PyQT

brew install zmq
pip install pyzmq
pip install pygments

Setting up Sublime

  1. Download and Install Sublime

  2. Edit Python paths.

    • Sublime >> Preferences... >> Browse Packages...
    • Click on Python/Python.sublime-build
  3. Install PackageControl. The simplest method of installation is through the Sublime Text console. The console is accessed via the ctrl+shortcut or theView > Show Console menu`. Once open, paste the appropriate Python code for your version of Sublime Text into the console.

import urllib2,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler()) ); by = urllib2.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); open( os.path.join( ipp, pf), 'wb' ).write(by) if dh == h else None; print('Error validating download (got %s instead of %s), please try manual install' % (dh, h) if dh != h else 'Please restart Sublime Text to finish installation')
  1. Modify the code to point to the right brew paths. Ex:
{
	"env":{
		"PATH":"/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/bin:/usr/local/share/python",
		"PYTHONPATH":"/usr/local/lib/python:/usr/local/Cellar/python/2.7.2/lib/python2.7/site-packages"
		},
	"cmd": ["/usr/local/bin/python", "-u", "$file"],
	"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
	"selector": "source.python"
}

Python Autocompletion with SublimeCodeIntel

Once you install Package Control, restart ST2 and bring up the Command Palette (Command+Shift+P on OS X, Control+Shift+P on Linux/Windows). Select "Package Control: Install Package", wait while Package Control fetches the latest package list, then select SublimeCodeIntel when the list appears. The advantage of using this method is that Package Control will automatically keep SublimeCodeIntel up to date with the latest version.

@nok

This comment has been minimized.

Show comment Hide comment
@nok

nok May 5, 2015

Hello @patriciogonzalezvivo,

because of Homebrew/homebrew-science#1291 (comment) you should replace brew install gfortran with brew install gcc.

~ brew install gfortran
Error: No available formula for gfortran
GNU Fortran is now provided as part of GCC, and can be installed with:
  brew install gcc

Happy coding,
Darius

nok commented May 5, 2015

Hello @patriciogonzalezvivo,

because of Homebrew/homebrew-science#1291 (comment) you should replace brew install gfortran with brew install gcc.

~ brew install gfortran
Error: No available formula for gfortran
GNU Fortran is now provided as part of GCC, and can be installed with:
  brew install gcc

Happy coding,
Darius

@seamusdemora

This comment has been minimized.

Show comment Hide comment
@seamusdemora

seamusdemora Oct 1, 2015

I've read that gcc shouldn't be installed if you also have Xcode installed.

REF: http://docs.python-guide.org/en/latest/starting/install/osx/

I've read that gcc shouldn't be installed if you also have Xcode installed.

REF: http://docs.python-guide.org/en/latest/starting/install/osx/

@dimpase

This comment has been minimized.

Show comment Hide comment
@dimpase

dimpase Dec 4, 2016

Xcode does not provide any Fortran, so you really will need gfortran (and thus gcc) if you need it.

dimpase commented Dec 4, 2016

Xcode does not provide any Fortran, so you really will need gfortran (and thus gcc) if you need it.

@slhck

This comment has been minimized.

Show comment Hide comment
@slhck

slhck Aug 1, 2017

As of now, this does not work anymore. On macOS with Homebrew you have to set the path as follows:

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

Otherwise the system python will come first. Check brew info python for the caveats.

slhck commented Aug 1, 2017

As of now, this does not work anymore. On macOS with Homebrew you have to set the path as follows:

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

Otherwise the system python will come first. Check brew info python for the caveats.

@Kronn8

This comment has been minimized.

Show comment Hide comment
@Kronn8

Kronn8 May 19, 2018

After adding a path to ~/.bash_profile, you have to run source ~/.bash_profile in the terminal. Otherwise, the change doesn't register.

Kronn8 commented May 19, 2018

After adding a path to ~/.bash_profile, you have to run source ~/.bash_profile in the terminal. Otherwise, the change doesn't register.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment