OS X already comes with Python 2.7.5; when you install Python with Homebrew, it puts the new version elsewhere without touching the built-in. Homebrew Python also ships with Pip, while OS X does not. What happens here, you use Homebrew pip to install psycopg2, then run OS X python and try to import it.
Run /usr/local/bin/python (full path to Homebrew Python) and try import psycopg2 from there.
If this works, you need to put /usr/local/bin before /usr/bin in your PATH variable so that your shell finds Python Homebrew before OS X every time. If you use Bash (the default shell in OS X), you can do this by placing the following in .bash_profile :
export PATH=/usr/local/bin:$PATH
To ensure that you are using the correct Python script in your scripts, use the following shebang line:
env will do a PATH search for Python and run the script with the first one it finds, just like typing python from your shell. Bash scripts and such should inherit the PATH variable and find the correct python unchanged.
You can also hardcode the path to Homebrew Python in your shebang line ( #!/usr/local/bin/python ), but this means that your script will only work on OS X machines with Python installed on the home computer and it is better to avoid it.
source share