Содержание страницы
5. Использование Python на Mac¶Using Python on a Mac
- Автор:
Bob Savage <bobsavage@mac.com>
Python на Mac под управлением macOS в целом очень похож на Python на любой другой Unix-платформе, но есть ряд дополнительных возможностей, таких как интегрированная среда разработки (IDE) и менеджер пакетов, которые стоит отметить.
5.1. Получение и установка Python¶Getting and Installing Python
macOS раньше поставлялся с предустановленным Python 2.7 в версиях 10.8 и 12.3. Рекомендуется установить самую свежую версию Python 3 с веб-сайта Python. Там доступна текущая сборка «universal2 binary» Python, которая работает нативно на новых процессорах Apple Silicon и старых Intel.
После установки вы получаете следующее:
Папка
Python 3.12в вашей папкеApplications. В ней вы найдете IDLE – среду разработки, входящую в стандартную поставку официальных дистрибутивов Python; а также Python Launcher, который обрабатывает двойные щелчки по Python-скриптам из Finder.Фреймворк
/Library/Frameworks/Python.framework, который включает исполняемый файл Python и библиотеки. Установщик добавляет этот путь в переменную PATH вашей оболочки. Чтобы удалить Python, вы можете удалить эти три компонента. Символическая ссылка на исполняемый файл Python помещается в/usr/local/bin/.
Примечание
На macOS 10.8–12.3 сборка 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¶How to run a Python script
Лучший способ начать работу с Python на macOS – использовать интегрированную среду разработки IDLE; см. раздел Среда разработки и используйте меню «Справка», когда среда запущена.
Если вы хотите запускать Python-скрипты из командной строки окна Терминала или из Finder, вам сначала понадобится редактор для создания скрипта. macOS поставляется с несколькими стандартными редакторами командной строки Unix, среди которых vim и nano. Если вам нужен более «маковый» редактор, BBEdit от Bare Bones Software (см. https://www.barebones.com/products/bbedit/index.html) – хороший выбор, как и TextMate (см. https://macromates.com). Другие редакторы включают MacVim (https://macvim.org) и Aquamacs (https://aquamacs.org).
Чтобы запустить скрипт из окна Терминала, необходимо убедиться, что
/usr/local/bin находится в пути поиска вашей оболочки.
Чтобы запустить скрипт из Finder, у вас есть два варианта:
Перетащите его на Python Launcher.
Выберите Python Launcher в качестве приложения по умолчанию для открытия вашего скрипта (или любого скрипта
.py) через окно информации Finder и дважды щелкните по нему. У Python Launcher есть различные настройки, управляющие запуском скриптов. Перетаскивание с нажатой клавишей Option позволяет изменить их для одного запуска, или используйте меню «Настройки», чтобы изменить параметры глобально.
5.1.2. Запуск скриптов с графическим интерфейсом¶Running scripts with a GUI
В старых версиях Python есть одна особенность macOS, о которой нужно знать: программы, взаимодействующие с оконным менеджером Aqua (иными словами, все, что имеет графический интерфейс), необходимо запускать особым образом. Используйте pythonw вместо python для запуска таких скриптов.
Начиная с Python 3.9 можно использовать как python, так и pythonw.
5.1.3. Конфигурация¶Configuration
Python на macOS учитывает все стандартные переменные окружения Unix, такие как
и PYTHONPATH, но установка этих переменных для программ, запускаемых из
Finder, нестандартна, так как Finder не читает ваш .profile или
.cshrc при запуске. Вам нужно создать файл
~/.MacOSX/environment.plist. Подробнее см.
Technical Q&A QA1067
от Apple.
За дополнительной информацией об установке пакетов Python обратитесь к разделу Установка дополнительных пакетов Python.
5.2. Среда разработки¶The IDE
Python поставляется со стандартной средой разработки IDLE. Хорошее введение в использование IDLE можно найти по адресу https://www.hashcollision.org/hkn/python/idle_intro/index.html.
5.3. Установка дополнительных пакетов Python¶Installing Additional Python Packages
Этот раздел перемещен в Python Packaging User Guide.
5.4. Программирование графического интерфейса¶GUI Programming
Существует несколько вариантов создания приложений с графическим интерфейсом на Mac с помощью Python.
PyObjC – это привязка Python к фреймворку Apple Objective-C/Cocoa, который является основой большинства современных разработок для Mac. Информацию о PyObjC можно найти на pyobjc.
Стандартный набор инструментов для графического интерфейса Python – tkinter, основанный на кроссплатформенном
наборе инструментов Tk (https://www.tcl.tk). Версия Tk, родная для Aqua, поставляется с
macOS компанией Apple, а последнюю версию можно загрузить и установить с
https://www.activestate.com; также можно собрать из исходного кода.
Доступен ряд альтернативных наборов инструментов для графического интерфейса macOS:
PySide: официальные привязки Python к набору инструментов Qt.
PyQt: альтернативные привязки Python к Qt.
Kivy: кросс-платформенный набор инструментов для графического интерфейса, поддерживающий настольные и мобильные платформы.
Toga: часть проекта BeeWare; поддерживает настольные, мобильные, веб- и консольные приложения.
wxPython: кросс-платформенный набор инструментов, который поддерживает настольные операционные системы.
5.5. Распространение приложений Python¶Distributing Python Applications
Существует ряд инструментов для преобразования кода Python в автономное распространяемое приложение:
py2app: Поддерживает создание пакетов macOS
.appиз проекта Python.Briefcase: Часть проекта BeeWare Project; кроссплатформенный инструмент упаковки, поддерживающий создание пакетов
.appна macOS, а также управление подписыванием и нотариальным заверением.PyInstaller: Кроссплатформенный инструмент упаковки, который создаёт один файл или папку в качестве распространяемого артефакта.
5.6. Другие ресурсы¶Other Resources
Список рассылки Pythonmac-SIG – отличный ресурс поддержки для пользователей Python и разработчиков на Mac:
https://www.python.org/community/sigs/current/pythonmac-sig/
Еще один полезный ресурс – вики MacPython: