Take the 2-minute tour ×

I started off learning Python on OS X 10.6 (Snow Leopard) with a python.org Python dmg. I think I've seen this called "MacPython" on SO, but I'm also thinking that this MacPython (currently Google's top hit for "MacPython") is different, right?

Although I felt like my python.org Python 3.3.0 install was working reasonably well for me initially (using distribute, easy_install, and pip, I installed several new packages including IPython), I'd like to start using Emacs IPython Notebook (EIN) and Scipy, and it's clear to me that this kind of arrangement is going to require a lot of additional stuff from the CheeseShop. Plus, I've been very happily using MacPorts for GNU Emacs and other unix (non-Python) packages for a long time, so I'm thinking that it might be a good idea to move all my Python work (I'm focused on learning py3) away from what I have now with the python.org install and into MacPorts Python.

Is that a good idea? IOW, am I likely to be making for a great deal of extra time/work/headache for myself (like the headaches that @davidavr writes about here when he writes, "MacPorts would pull down and install the full Python 2.4 distro along with the library.") for very little gain or is the benefit of using a package manager like MacPorts for my Python stuff going to be a big timesaver like I suspect it might be?

I've read many other threads here (most rather old) that partly relate, but don't feel like there's anything recent that really addresses my question, and I encountered lots of older advice where it was clear that newer advice conflicted, so I'm asking what may be considered a duplicate, but if it is, I can't help thinking that the passage of several years may have changed some of the answers to older similar questions.

share|improve this question
I'm not a Mac user, but at a guess: it will be slow to set up, because it's compiling a lot of stuff from scratch, but there are a lot of benefits to having a serious package manager dealing with installing stuff. –  Thomas K Jan 16 '13 at 13:21
add comment

1 Answer

up vote 1 down vote accepted

After trying with MacPorts and pip3 for many days and ultimately being unable to get a functional IPython notebook/qtconsole going with matplotlib and numpy and sympy and all that wonderful stuff, I gave up and switched to homebrew which ultimately worked for me, but I had to do a regular install from source for several of the bigger packages. Although homebrew would install these packages, it seemed to be doing so strictly for Python 2.7 and never for Python3; I tried several options in homebrew to fix this, but finally gave up and just installed from source for those difficult packages like Qt.

So I guess my experience was that MacPorts with pip3 was not a good idea for my particular goal whereas homebrew with pip3 was better, but still incomplete for Scipy packages with Python3. (Although perhaps if I had tried installing from source to supplement MacPorts the way I did with homebrew then MacPorts would have sufficed also.)

Looking back on the experience, I think there is a great need for more detailed and comprehensive documentation for new users on how to start from scratch and build these capabilities because I tried many different strategies and it was ultimately only through trial and error and lots of different bits and pieces of advice from all over the web that I finally got some of it going. I still don't have EIN going, but I think that's going to require tools strictly from the emacs world to get that going. EIN documentation strongly encourages use of an emacs package manager called el-get (or MELPA), and I found both to be buggy, so all I have thus far is IPython notebook using a browser which is still wonderful.


Oh, one other very important thing: I stopped trying with Python 3.3.0 and moved back to Python 3.2.3 as numpy 1.6.2 doesn't support Python 3.3.0 and although this has apparently been fixed in numpy 1.7.x, there are currently no plans to release a numpy 1.6.3.

share|improve this answer
add comment

Your Answer


