Каков наилучший способ установить Python 2 на OS X? - PullRequest
4 голосов
/ 08 марта 2011

Мой коллега хочет использовать мой код Python 2 на своей машине с OS X (10.6).Мой код импортирует несколько встроенных пакетов Python, включая Tkinter и shelve, а также использует сторонние пакеты, включая numpy, scipy, matplotlib и ipython.

Я столкнулся с несколькими проблемами при сборке OS Xв питоне(IDLE не работает, например *).Я подозреваю, что мне следует установить более позднюю версию python и другую версию Tk .

Мои вопросы:

  1. Будут ли проблемы с наличием двух разных версий python / Tk на одной машине?

  2. Я бы хотел связать терминальные команды «python», «ipython» и «easy_install»с более поздней версией python.Как мне это сделать?

  3. Когда я устанавливаю сторонние пакеты, такие как numpy , используя файл .dmg , как я могу контролировать, какая версия python numpy устанавливается в?

  4. Есть ли лучший способ сделать это?

Если этот процесс пойдет хорошо, я рассмотрю возможность добавления инструкций OS X в мойДокументация кода, поэтому я хотел бы свести этот процесс к самому простому, наиболее общему подходу.

* РЕДАКТИРОВАТЬ: Кроме того, это

РЕДАКТИРОВАТЬ: Спасибо всемза полезные ответы.Мой коллега попробовал MacPorts, который, кажется, работает хорошо, но имеет несколько быстрых ударов.Сначала мы должны были установить Xcode с установочного диска системы.Это не быстрая или легкая установка (несколько ГБ).К счастью, у нас все еще был диск!После того, как Xcode был установлен, MacPorts стал простым в установке.Python и подпакеты python, которые нам были нужны, также были просты в установке, но он сказал мне, что эта установка заняла несколько часов.Предположительно, эта задержка связана с компиляцией?Он легко установил питон MacPorts по умолчанию.Тем не менее, я думаю, что мы должны изменить приложение Python Launcher вручную, по-видимому, по-прежнему по умолчанию используется системный python.

Несмотря на то, что у него сейчас есть работающая система, я испытываю желание попросить егопопробуйте одно из других решений.Я не уверен, что все потенциальные пользователи моего кода допустят многочасовую установку в несколько гигабайт.

Ответы [ 7 ]

10 голосов
/ 08 марта 2011

Я использую brew для установки всех моих библиотек / компиляторов / интерпретаторов.

Для установки python попробуйте это:

brew install python

Затем добавьте Pythonкаталог binaries к вашему $PATH в вашем ~/.profile:

export PATH=`brew --prefix python`/bin:$PATH

Я бы порекомендовал вам установить pip, virtualenv и virtualenvwrapper для лучшего контроля над вашей средой.

5 голосов
/ 11 марта 2011

Вы пробовали ActivePython ?

Включает в себя менеджер пакетов ( PyPM ), который по умолчанию устанавливается в ваш домашний каталог (например: ~/Library/Python/2.7). Основные сценарии получают символическую ссылку в /usr/local/bin; используйте включенную pythonselect для установки активной версии Python.

Вам не нужно беспокоиться об установке пакетов .dmg, так как PyPM - это двоичный менеджер пакетов ... поэтому вы можете устанавливать не чистые пакеты Python, такие как NumPy собирать вещи самостоятельно.

ActivePython может использовать Apple Tcl / Tk или, если установлен, ActiveTcl.

" самый простой, самый общий подход " в вашей документации может быть:

  1. Установить ActivePython 2.7
  2. Откройте терминал и введите pypm-2.7 install matplotlib ipython
2 голосов
/ 16 августа 2018

Приложение об использовании brew:

С некоторого времени brew install python установит python 3 .

Если вы намереваетесь установить python 2 , вы хотите использовать

brew install python@2

Прекрасно установить и python, и python3, используя brew!

2 голосов
/ 08 марта 2011

Используя MacPorts , вы можете устанавливать python 2.6, 2.7, 3.1 и 3.2 одновременно, со своими собственными пакетами, даже не касаясь встроенного python.

numpy, scipy, matplotlib и ipython также доступны в качестве портов для большинства этих версий Python.

Более того, если вы установите порт python_select , выуметь:

  • выбрать, какой из них (плюс встроенный питон) является питоном по умолчанию;

  • для установкипакеты python через easy_install / pip для «выбранного» питона, если они недоступны в качестве портов.

Добавьте в смесь virtualenv, и вы получите очень, очень гибкуюСреда разработки Python.

По вашим вопросам:

Q1: с MacPorts, нет.хотя я не частый пользователь, я установил и использовал matplotlib в 2.6 и 2.7, переключаясь между ними с помощью python_select.

Q2: easy_install, pip, ipython будут «связаны» с питоном, которым они были установлены.(но см. совет 1)

Q3: проще установить один из портов py {26,27, xx} -numpy или pip install numpy под python_select'ed.

Q4: ну, MacPorts - лучшее, что я знаю после APT в Debian / Ubuntu ...: -)

Теперь два совета, если вы попробуете MacPorts:

  1. MacPorts без проблем устанавливает порты отдельно от установки OS X в каталоге / opt / local, а каждая версия python устанавливается в каталог /opt/local/Library/Frameworks/Python.framework/Versions/{2.5,2.6,2.7,...}.Используя python_select, аккуратно переключите команду «python» с помощью ссылок.НО ... каталог Versions/{2.5,2.6,2.7,...}/bin, в котором установлены скрипты python, не добавляется в PATH.Просто добавив: export PATH=/opt/local/Library/Frameworks/Python.framework/Versions/Current/bin:$PATH к вашему ~/.profile, вы всегда будете иметь прямой доступ к скриптам, установленным для выбранного питона.

  2. , чтобы избежать неприятных сюрпризов, я добавил echo Selected python is \"$(python_select -s)\" line to my ~/.profile, поэтому я всегда знаю, какой мой текущий выбранный питон при открытии сессии ...: -)

С уважением,

Жорж

2 голосов
/ 08 марта 2011

Почти во всех случаях лучше всего использовать питон из http://python.org/.. Он правильно устанавливает пути и ничего не перезаписывает. Установки пакета DMG обычно работают автоматически, как и python setup.py install, и не так сложно заставить setuptools работать. Если вы хотите установить для каждого пользователя, легко установить .pydistutils.cfg, и python автоматически распознает путь install_lib = ~/Library/Python/$py_version_short/site-packages

1 голос
/ 08 марта 2011

Вот старый пост, который также отвечает на ваши вопросы.

В общем, это не проблема иметь более одной установки python на вашем компьютере.Вам просто нужно следить за тем, кого вы вызываете в командной строке.

>> which python 

... помогает определить, где находится ваш двоичный файл Python.Исходный Python для Mac OS X обычно находится по адресу "/ usr / bin / python"

Я лично использую установку Python MacPorts.Он также поддерживает вас с установкой модулей.(см. ссылку выше)

0 голосов
/ 08 марта 2011

У меня есть 4 версии python на моем MacBook Pro.2 из первоначальной установки OS X 10.6 и последующего обновления, затем самостоятельно устанавливаемые копии Python 2.7 и 3.2.Вы можете обновить команду python, чтобы она указала на любую из версий.Все они устанавливаются в отдельных каталогах и не вызывают проблем друг с другом.

Я не уверен, что произойдет, когда вы установите из файла .dmg.Я считаю, что он просто будет использовать любую версию, на которую указывает python.

Эта запись на superuser.com отвечает на ваши вопросы об изменении путей по умолчанию.

...