Contenu principal

Configurer votre système pour utiliser Python

Support de Python

Pour appeler des modules Python® depuis MATLAB®, vous devez avoir installé une version supportée de l’implémentation de référence (CPython) sur votre système. Installez une distribution telle que celles disponibles sur https://www.python.org/downloads/. MATLAB ne supporte pas les versions de CPython installées à partir du Microsoft® Store. Pour plus d’informations sur les versions supportées, consultez Versions of Python Compatible with MATLAB Products by Release (Versions de Python compatibles avec les produits MATLAB par version).

  • Si vous travaillez sous Windows®, vous devez installer une distribution si ce n’est déjà fait. Pour plus d’informations, consultez Installer une implémentation Python supportée.

  • Si vous travaillez sur une plateforme Linux®, il se peut que Python soit déjà installé. Appelez pyenv pour vérifier que vous disposez d’une version supportée. Pour plus d’informations sur le téléchargement, consultez Installer une implémentation Python supportée.

  • Si vous travaillez sur une plateforme Mac, vérifiez que les builds MATLAB et Python correspondent à votre architecture (processeur Apple Silicon ou Intel®). Pour plus d’informations, consultez How to use Python from MATLAB on Mac with Apple Silicon (Comment utiliser Python depuis MATLAB sur un Mac avec Apple Silicon).

MATLAB sélectionne et charge un interpréteur Python lorsque vous saisissez une expression Python depuis MATLAB avec le namespace py, par exemple py.list. Pour changer d’interpréteur :

  • Si Python est chargé en mode InProcess ExecutionMode, redémarrez MATLAB et appelez pyenv avec les informations ou le mode d’exécution de la nouvelle version.

  • Si Python est chargé en mode OutOfProcess, arrêtez le processus associé à l’interpréteur Python en appelant terminate avant d’appeler pyenv avec les informations ou le mode d’exécution de la nouvelle version.

MATLAB accède aux paramètres suivants lorsqu’il charge l’interpréteur Python :

  • Paramètres utilisateur de l’environnement Python configurés avec la fonction pyenv. Si la version que vous spécifiez ne correspond pas à celle spécifiée par PYTHONHOME, supprimez la variable d’environnement avant d’appeler pyenv. La valeur définie par pyenv est conservée d’une session MATLAB à une autre. Pour plus d’informations, consultez Définir la version de Python sur une plateforme Windows ou Définir la version de Python sur les plateformes Mac et Linux.

  • Variable d’environnement PYTHONHOME qui spécifie l’emplacement des bibliothèques Python standard si la valeur de pyenv.Status est NotLoaded. Pour afficher la valeur de la variable dans MATLAB, saisissez getenv("PYTHONHOME"). Pour plus d’informations, consultez Utiliser la variable d’environnement PYTHONHOME.

  • Variable d’environnement PATH du système. Pour afficher le chemin système dans MATLAB, saisissez getenv("PATH").

  • Registre Windows.

Pour vérifier que Python est installé sur votre système, ouvrez l’interpréteur Python à partir de l’invite du système et appelez des fonctions Python.

Pour déterminer quelle est la version utilisée par MATLAB, appelez pyenv. Par exemple, sous Windows :

pe = pyenv
pe = 

  PythonEnvironment with properties:

          Version: "3.10"
       Executable: "C:\Users\username\AppData\Local\Programs\Python\Python310\pythonw.exe"
          Library: "C:\Users\username\AppData\Local\Programs\Python\Python310\python310.dll"
             Home: "C:\Users\username\AppData\Local\Programs\Python\Python310"
           Status: NotLoaded
    ExecutionMode: InProcess

Sous Linux :

pe = pyenv
pe = 

  PythonEnvironment with properties:

          Version: "3.9"
       Executable: "/usr/bin/python3"
          Library: "libpython3.9.so.1.0"
             Home: "/usr"
           Status: NotLoaded
    ExecutionMode: InProcess

Installer une implémentation Python supportée

  • Accédez à https://www.python.org/downloads/ et faites défiler la page jusqu’à la section Looking for a specific release.

  • Recherchez la version souhaitée et cliquez sur Download. Pour plus d’informations sur les versions supportées, consultez Versions of Python Compatible with MATLAB Products by Release (Versions de Python compatibles avec les produits MATLAB par version).

  • Cliquez sur le format souhaité pour la version 64 bits et suivez les instructions en ligne.

Si le message Unable to resolve the name py.myfunc s’affiche, vous avez peut-être un problème d’installation.

Installer Python dans un environnement virtuel

Vous pouvez créer un environnement virtuel pour une version spécifique de Python avec le module Python venv. Vous pouvez également installer MATLAB Engine API pour Python dans un environnement virtuel. Pour obtenir des instructions concernant venv, consultez l’article MATLAB Answers™ intitulé Python virtual environments with MATLAB (Environnements virtuels Python avec MATLAB). Pour plus d’informations sur les environnements virtuels Python, consultez le tutoriel Python intitulé Environnements virtuels et paquets.

Définir la version de Python sur une plateforme Windows

Sur les plateformes Windows, utilisez :

pyenv(Version="version")

ou

pyenv(Version="executable")

executable est le chemin complet du fichier exécutable Python. Pour plus d’informations, reportez-vous à l’argument nom-valeur Version pour pyenv. Par exemple, sur un système Windows, définissez la version de Python à 3.11.

pyenv(Version="3.11");

Remarque

Si vous avez téléchargé un interpréteur Python mais ne l’avez pas inscrit dans le registre Windows, utilisez :

pyenv(Version="executable")

Par exemple, saisissez :

pyenv(Version="C:\Users\username\AppData\Local\Programs\Python\Python311\python.exe");

Télécharger une version 64 bits de Python sur les plateformes Windows

L’architecture Python doit correspondre à l’architecture MATLAB. Pour plus d’informations, consultez Installer une implémentation Python supportée.

Définir la version de Python sur les plateformes Mac et Linux

Pour définir la version, saisissez :

pyenv(Version="executable")

executable est le chemin complet du fichier exécutable Python. Pour plus d’informations, reportez-vous à l’argument nom-valeur Version pour pyenv. Par exemple, saisissez :

pyenv(Version="/usr/bin/python3.11")

Configuration requise pour compiler l’exécutable Python

Sur les systèmes Linux et macOS, si vous compilez l’exécutable Python, configurez le build avec l’option --enable-shared. Vous pouvez consulter les options du script Python configure dans la documentation de configuration de Python.

Utiliser la variable d’environnement PYTHONHOME

Dans la mesure du possible, utilisez pyenv pour définir l’interpréteur Python. Dans les cas où vous ne pouvez pas utiliser pyenv, par exemple lors de l’exécution d’applications MATLAB, vous pouvez définir l’interpréteur avec la variable d’environnement PYTHONHOME. Si vous définissez la version avec pyenv et PYTHONHOME, il doit s’agir de la même version.

  • Pour afficher la variable dans MATLAB, saisissez getenv("PYTHONHOME"). Pour afficher la version définie par pyenv, saisissez e = pyenv; e.Version.

  • Pour définir PYTHONHOME, consultez https://docs.python.org/3/using/cmdline.html#envvar-PYTHONHOME. Pour plus d’informations sur la définition de variables d’environnement, consultez la documentation de votre système d’exploitation. Vous pouvez également définir la variable avec setenv. Toutefois, ce paramètre s’applique uniquement à la session MATLAB en cours.

  • Pour supprimer PYTHONHOME de votre session MATLAB en cours, saisissez unsetenv("PYTHONHOME").

Vous ne pouvez pas changer la version de Python si vous avez déjà chargé l’interpréteur. MATLAB charge un interpréteur Python lorsque vous saisissez une instruction Python depuis MATLAB avec le namespace py, par exemple py.sys.path. Pour changer d’interpréteur :

  • Si Python est chargé en mode InProcess ExecutionMode dans une seule session MATLAB, redémarrez MATLAB et appelez pyenv avec les informations de la nouvelle version.

  • Si Python est chargé en mode OutOfProcess, appelez terminate avant d’appeler pyenv avec les informations de la nouvelle version.

Voir aussi

Rubriques

Sites web externes