5. Использование Python на Mac¶
- Автор
Боб Сэвидж <bobsavage@mac.com>
Python на Mac под управлением macOS в принципе очень похож на Python на любой другой платформе Unix, но есть ряд дополнительных возможностей, таких как IDE и менеджер пакетов, на которые стоит обратить внимание.
5.1. Получение и установка MacPython¶
Между версиями 10.8 и 12.3 macOS поставлялась с предустановленным Python 2.7. Вам предлагается установить последнюю версию Python 3 с сайта Python (https://www.python.org). Там же доступна текущая «универсальная бинарная» сборка Python, которая работает на новых Intel и старых PPC процессорах Mac.
После установки вы получите несколько вещей:
Папка
Python 3.12
в вашей папкеApplications
. В ней вы найдете IDLE, среду разработки, которая является стандартной частью официальных дистрибутивов Python; и PythonLauncher, который обрабатывает двойной щелчок на Python-скриптах из Finder.Фреймворк
/Library/Frameworks/Python.framework
, который включает исполняемый файл Python и библиотеки. Программа установки добавляет это расположение в путь вашей оболочки. Чтобы удалить MacPython, вы можете просто удалить эти три вещи. Симссылка на исполняемый файл Python размещается в /usr/local/bin/.
Сборки Python, предоставляемые Apple, устанавливаются в папки /System/Library/Frameworks/Python.framework
и /usr/bin/python
соответственно. Вы никогда не должны изменять или удалять их, поскольку они контролируются Apple и используются программами Apple или сторонних разработчиков. Помните, что если вы решите установить более новую версию Python с сайта python.org, у вас на компьютере будет две разные, но функциональные установки Python, поэтому важно, чтобы ваши пути и использование соответствовали тому, что вы хотите сделать.
IDLE включает меню справки, которое позволяет вам получить доступ к документации по Python. Если вы совсем новичок в Python, вам следует начать читать введение в учебник в этом документе.
Если вы знакомы с Python на других платформах Unix, вам следует прочитать раздел о запуске сценариев Python из оболочки Unix.
5.1.1. Как запустить сценарий Python¶
Лучший способ начать работу с Python на macOS - интегрированная среда разработки IDLE, см. раздел IDE и используйте меню Help во время работы IDE.
Если вы хотите запускать сценарии Python из командной строки окна Terminal или из Finder, вам сначала понадобится редактор для создания сценария. macOS поставляется с несколькими стандартными редакторами командной строки Unix, среди которых vim и emacs. Если вам нужен редактор, более похожий на Mac, хорошо подойдут BBEdit или TextWrangler от Bare Bones Software (см. http://www.barebones.com/products/bbedit/index.html), а также TextMate (см. https://macromates.com/). Другие редакторы включают Gvim (https://macvim-dev.github.io/macvim/) и Aquamacs (http://aquamacs.org/).
Чтобы запустить ваш скрипт из окна терминала, вы должны убедиться, что /usr/local/bin
находится в пути поиска оболочки.
Для запуска сценария из Finder у вас есть два варианта:
Перетащите его на PythonLauncher
Выберите PythonLauncher в качестве приложения по умолчанию, чтобы открыть ваш скрипт (или любой .py скрипт) через окно Finder Info и дважды щелкнуть по нему. PythonLauncher имеет различные настройки для управления запуском вашего скрипта. Перетаскивание опций позволяет вам изменить их для одного вызова или использовать меню Preferences для глобального изменения.
5.1.2. Запуск сценариев с помощью графического интерфейса пользователя¶
В старых версиях Python есть одна особенность macOS, о которой вам следует знать: программы, которые работают с оконным менеджером Aqua (другими словами, все, что имеет графический интерфейс), должны запускаться особым образом. Для запуска таких скриптов используйте pythonw вместо python.
В Python 3.9 вы можете использовать python или pythonw.
5.1.3. Конфигурация¶
Python на macOS использует все стандартные переменные окружения Unix, такие как PYTHONPATH
, но установка этих переменных для программ, запущенных из Finder, нестандартна, поскольку Finder не читает ваши .profile
или .cshrc
при запуске. Вам необходимо создать файл ~/.MacOSX/environment.plist
. Подробности см. в техническом документе Apple QA1067.
Более подробную информацию об установке пакетов Python в MacPython см. в разделе Установка дополнительных пакетов Python.
5.2. IDE¶
MacPython поставляется со стандартной средой разработки IDLE. Хорошее введение в использование IDLE можно найти на сайте http://www.hashcollision.org/hkn/python/idle_intro/index.html.
5.3. Установка дополнительных пакетов Python¶
Существует несколько методов установки дополнительных пакетов Python:
Пакеты могут быть установлены через стандартный режим Python distutils (
python setup.py install
).Многие пакеты также могут быть установлены через расширение setuptools или обертку pip, см. https://pip.pypa.io/.
5.4. Программирование графических интерфейсов на Mac¶
Существует несколько вариантов создания GUI-приложений на Mac с помощью Python.
PyObjC - это привязка Python к фреймворку Apple Objective-C/Cocoa, который является основой большинства современных разработок для Mac. Информацию о PyObjC можно найти на сайте https://pypi.org/project/pyobjc/.
Стандартным набором инструментов графического интерфейса Python является tkinter
, основанный на кроссплатформенном наборе инструментов Tk (https://www.tcl.tk). Aqua-native версия Tk поставляется в комплекте с OS X от Apple, а последнюю версию можно загрузить и установить с https://www.activestate.com; она также может быть собрана из исходных текстов.
wxPython - еще один популярный кроссплатформенный набор инструментов для создания графического интерфейса, который работает на macOS. Пакеты и документация доступны на сайте https://www.wxpython.org.
PyQt - еще один популярный кроссплатформенный набор инструментов графического интерфейса, который работает на macOS. Более подробную информацию можно найти на сайте https://riverbankcomputing.com/software/pyqt/intro.
5.5. Распространение приложений Python на Mac¶
Стандартным инструментом для развертывания автономных приложений Python на Mac является py2app. Более подробную информацию об установке и использовании py2app можно найти на сайте https://pypi.org/project/py2app/.
5.6. Другие ресурсы¶
Список рассылки MacPython - это отличный ресурс поддержки для пользователей и разработчиков Python на Mac:
https://www.python.org/community/sigs/current/pythonmac-sig/
Еще одним полезным ресурсом является вики MacPython: