5. Using Python on a Mac

Auteur

Bob Savage <bobsavage@mac.com>

Python on a Mac running macOS is in principle very similar to Python on any other Unix platform, but there are a number of additional features such as the IDE and the Package Manager that are worth pointing out.

5.1. Obtenir et installer MacPython

macOS since version 10.8 comes with Python 2.7 pre-installed by Apple. If you wish, you are invited to install the most recent version of Python 3 from the Python website (https://www.python.org). A current "universal binary" build of Python, which runs natively on the Mac's new Intel and legacy PPC CPU's, is available there.

Vous obtiendrez un certain nombre de choses après installation:

  • Un dossier Python 3.9 dans votre dossier Applications. Dedans vous trouverez IDLE, l'environnement de développement qui fait partie des distributions Python officielles ; PythonLauncher, qui gère le lancement de scripts Python depuis le Finder.

  • Un framework /Library/Frameworks/Python.framework, qui inclut l’exécutable Python et ses bibliothèques. L’installateur ajoute ce chemin à votre PATH. Pour désinstaller MacPython, vous pouvez simplement supprimer ces trois choses. Un lien symbolique vers l'exécutable Python est placé dans /usr/local/bin/.

Le build Python fourni par Apple est installé dans /System/Library/Frameworks/Python.framework et /usr/bin/python. Vous ne devriez jamais les modifier ou supprimer, car ils sont contrôlés et utilisés par Apple (ou d'autres logiciels). Rappelez vous que si vous choisissez d'installer un Python plus récent depuis python.org, vous aurez deux installations de Python différentes et fonctionnelles sur votre ordinateur, il est donc important que vos chemins et utilisations soit cohérentes avec ce que vous voulez faire.

IDLE inclut un menu d'aide qui vous permet d’accéder à la documentation Python. Si vous êtes entièrement novice, vous devriez commencer par lire le tutoriel d'introduction dans ce document.

Si vous êtes familier avec Python sur d'autres plateformes Unix, vous devriez lire la section sur comment exécuter des scripts Python depuis un shell Unix.

5.1.1. Comment exécuter un script Python

Your best way to get started with Python on macOS is through the IDLE integrated development environment, see section L'IDE and use the Help menu when the IDE is running.

If you want to run Python scripts from the Terminal window command line or from the Finder you first need an editor to create your script. macOS comes with a number of standard Unix command line editors, vim and emacs among them. If you want a more Mac-like editor, BBEdit or TextWrangler from Bare Bones Software (see http://www.barebones.com/products/bbedit/index.html) are good choices, as is TextMate (see https://macromates.com/). Other editors include Gvim (http://macvim-dev.github.io/macvim/) and Aquamacs (http://aquamacs.org/).

Pour exécuter votre script depuis la fenêtre Terminal, vous devez vous assurer que /usr/local/bin est dans le chemin de recherche de votre shell (PATH).

Pour exécuter votre script depuis le Finder vous avez deux options :

  • Glissez-le vers PythonLauncher

  • Sélectionnez PythonLauncher en tant qu'application par défaut pour ouvrir votre script (ou n'importe quel script .py) depuis la fenêtre info de votre Finder puis double-cliquez votre script. PythonLauncher a des préférences variées pour contrôler comment votre script est exécuté. Glisser des options permets de les changer pour une invocation, ou utilisez le menu Préférences pour changer les choses globalement.

5.1.2. Lancer des scripts avec une interface graphique

With older versions of Python, there is one macOS quirk that you need to be aware of: programs that talk to the Aqua window manager (in other words, anything that has a GUI) need to be run in a special way. Use pythonw instead of python to start such scripts.

Avec Python 3.9, vous pouvez utiliser python ou pythonw.

5.1.3. Configuration

Python on macOS honors all standard Unix environment variables such as PYTHONPATH, but setting these variables for programs started from the Finder is non-standard as the Finder does not read your .profile or .cshrc at startup. You need to create a file ~/.MacOSX/environment.plist. See Apple's Technical Document QA1067 for details.

Pour plus d'informations sur l'installation de paquets Python dans MacPython, voir la section Installation de paquets Python additionnels.

5.2. L'IDE

MacPython est livré avec l'environnement de développement standard IDLE. Une bonne introduction sur l’utilisation d'IDLE peut être trouvée à http://www.hashcollision.org/hkn/python/idle_intro/index.html.

5.3. Installation de paquets Python additionnels

Il y a plusieurs méthodes pour installer des paquets Python supplémentaires :

  • Les paquets peuvent être installés en utilisant distutils (python setup.py install).

  • Beaucoup de paquets peuvent aussi être installés via l'extension setuptools ou pip, voir https://pip.pypa.io/.

5.4. Programmation d'interface graphique sur le Mac

Il y a plusieurs options pour construire des applications avec interface graphique sur le Mac avec Python.

PyObjC est un binding Python vers le framework Objective-C/Cocoa d'Apple, qui est la base de la plupart des développements modernes sur Mac. Des informations sur PyObjC sont disponible à https://pypi.org/project/pyobjc/.

La boîte à outils standard de Python pour des interfaces graphique est tkinter, basé sur la boite a outils multi-plateformes Tk (https://www.tcl.tk). Une version native Aqua de Tk est empaquetée avec OS X par Apple, et la dernière version peut être téléchargée et installée depuis https://www.activestate.com ; elle peut aussi être construite depuis les sources.

wxPython is another popular cross-platform GUI toolkit that runs natively on macOS. Packages and documentation are available from https://www.wxpython.org.

PyQt is another popular cross-platform GUI toolkit that runs natively on macOS. More information can be found at https://riverbankcomputing.com/software/pyqt/intro.

5.5. Distribuer des Applications Python sur le Mac

L'outil standard pour déployer des applications Python sur le Mac est py2app. Plus d'information sur l'installation et l'utilisation de py2app sur http://undefined.org/python/#py2app.

5.6. Autres ressources

La liste de diffusion courriel MacPython est une excellente ressource support pour les utilisateurs et développeurs Python sur Mac :

https://www.python.org/community/sigs/current/pythonmac-sig/

Une autre ressource utile est le wiki MacPython :

https://wiki.python.org/moin/MacPython