Twoje pytanie ma już trzy lata, a inne odpowiedzi nie zawierają pewnych szczegółów:
Większość ludzi, których znam, używa HomeBrew lub MacPorts , wolę MacPorts ze względu na jego czysty wygląd domyślnego środowiska Mac OS X i moją konfigurację programistyczną. Po prostu przenieś swój folder / opt i przetestuj swoje pakiety w normalnym środowisku użytkownika Python
MacPorts jest przenośne tylko na Macu, ale dzięki easy_install lub pip dowiesz się, jak skonfigurować swoje środowisko na dowolnej platformie (Win / Mac / Linux / Bsd ...). Ponadto zawsze będzie bardziej aktualny i będzie zawierał więcej pakietów
Osobiście pozwalam MacPorts obsługiwać moje moduły Pythona, aby wszystko było aktualizowane. Jak każdy inny menedżer pakietów wysokiego poziomu (np. Apt-get), jest on znacznie lepszy w przypadku ciężkich modułów z dużą ilością zależności binarnych. Nie ma sposobu, bym zbudował moje wiązania Qt (PySide) za pomocą easy_install lub pip. Qt jest ogromny i wymaga dużo czasu na kompilację. Jeśli potrzebujesz pakietu w Pythonie, który wymaga biblioteki używanej przez programy inne niż Python, staraj się unikać easy_install lub pip
W pewnym momencie zauważysz, że w MacPorts brakuje niektórych pakietów. Nie wierzę, że MacPorts kiedykolwiek da Ci cały CheeseShop . Na przykład ostatnio potrzebowałem modułu Elixir , ale MacPorts oferuje tylko py25-elixir i py26-elixir, bez wersji py27. W takich przypadkach masz:
pip-2.7 install --user elixir
(upewnij się, że zawsze wpisujesz pip- (wersja))
To stworzy dodatkową bibliotekę Pythona w twoim katalogu domowym. Tak, Python będzie działał z więcej niż jedną lokalizacją biblioteki: jedną kontrolowaną przez MacPorts i lokalną użytkownika dla wszystkiego, czego brakuje w MacPorts.
Teraz zauważ, że wolę pip niż easy_install. Jest dobry powód, dla którego powinieneś unikać setuptools i easy_install. Oto dobre wyjaśnienie i staram się trzymać od nich z daleka. Jedną z bardzo przydatnych funkcji pip jest dostarczanie listy wszystkich modułów (wraz z ich wersjami), które zainstalowałeś za pomocą MacPorts, easy_install i samego pip:
pip-2.7 zamrozić
Jeśli zacząłeś już korzystać z easy_install, nie martw się, pip może rozpoznać wszystko, co zostało już zrobione przez easy_install, a nawet zaktualizować zainstalowane wraz z nim pakiety.
Jeśli jesteś programistą, miej oko na virtualenv do kontrolowania różnych konfiguracji i kombinacji wersji modułów. Inne odpowiedzi już o tym wspominają, o czym do tej pory nie wspomniano, to moduł Tox , narzędzie do testowania poprawności instalacji pakietu w różnych wersjach Pythona.
Chociaż zwykle nie mam konfliktów wersji, lubię mieć virtualenv, aby skonfigurować czyste środowisko i uzyskać jasny obraz zależności moich pakietów. W ten sposób nigdy nie zapomnę żadnych zależności w moim setup.py
Jeśli wybierasz MacPorts, pamiętaj, że wiele wersji tego samego pakietu nie jest już wybieranych, tak jak stary styl Debiana z dodatkowym pakietem python_select (nadal jest dostępny dla kompatybilności). Teraz masz polecenie wyboru, aby wybrać, która wersja Pythona będzie używana (możesz nawet wybrać te zainstalowane przez Apple):
$ port select python
Available versions for python:
none
python25-apple
python26-apple
python27 (active)
python27-apple
python32
$ port select python python32
Dodaj do tego toksyny, a Twoje programy powinny być naprawdę przenośne