Créer et gérer des environnements Python dans Visual Studio

Un environnement Python est un contexte d’exécution de code Python, qui comprend des environnements globaux, virtuels et conda. Un comprend un interpréteur, une bibliothèque (généralement la bibliothèque Python standard) et un ensemble de packages installés. Tous ces composants déterminent la syntaxe et les constructions de langage valides, les fonctionnalités du système d’exploitation auxquelles vous pouvez accéder et quels packages vous pouvez utiliser.

Dans Visual Studio sur Windows, utilisez la fenêtre Environnements Python décrite dans cet article afin de gérer les environnements et d’en sélectionner un par défaut pour les nouveaux projets. Vous trouverez d’autres aspects relatifs aux environnements dans les articles suivants :

Remarque

Vous pouvez gérer des environnements pour du code Python ouvert en tant que dossier en sélectionnant Fichier>Ouvrir>Dossier. La barre d’outils Python vous permet de basculer entre tous les environnements détectés et d’ajouter un nouvel environnement. Les informations d’environnement sont stockées dans le fichier PythonSettings.json dans le dossier d’espace de travail .vs.

Prérequis

  • Une charge de travail Python installée.

Si vous débutez avec Python dans Visual Studio, consultez les articles suivants qui vous donneront un contexte général :

Fenêtre Environnements Python

Les environnements connus de Visual Studio s’affichent sur la fenêtre Environnements Python. Pour ouvrir cette fenêtre, suivez l’une des méthodes ci-dessous :

  • Sélectionnez Affichage>Autres fenêtres>Environnements Python.
  • Cliquez avec le bouton droit sur le nœud Environnements Python d’un projet dans l’Explorateur de solutions, puis sélectionnez Afficher tous les environnements Python.

Capture d’écran de la commande Afficher tous les environnements Python dans l'explorateur de solutions pour Visual Studio 2019.

Capture d’écran de la commande Afficher tous les environnements Python dans l'explorateur de solutions pour Visual Studio 2022.

La fenêtre Environnements Python apparaît à côté de l’Explorateur de solutions dans Visual Studio :

Capture d’écran de la fenêtre Environnements Python dans Visual Studio 2019.

Capture d’écran de la fenêtre Environnements Python dans Visual Studio 2022.

Visual Studio recherche les environnements globaux installés en utilisant le registre (suivant le PEP 514), ainsi que les environnements virtuels et les environnements conda (voir Types d’environnements). Si un environnement attendu ne figure pas dans la liste, consultez Identifier manuellement un environnement existant.

Lorsque vous sélectionnez un environnement dans la liste, Visual Studio affiche diverses propriétés et commandes pour cet environnement dans l’onglet Aperçu de la fenêtre Environnements Python, telles que l’emplacement de l’interpréteur. Les commandes au bas de l’onglet Aperçu ouvrent chacune une invite de commande avec l’interpréteur en cours d’exécution. Pour plus d’informations, consultez Informations de référence sur les onglets de la fenêtre Environnements Python - Vue d’ensemble.

Utilisez la liste déroulante sous la liste des environnements pour basculer vers différents onglets tels que Paquets et IntelliSense. Ces onglets sont également décrits dans les Informations de référence sur les onglets de la fenêtre Environnements Python.

La sélection d’un environnement ne change pas sa relation avec les projets. L’environnement par défaut, en gras dans la liste, est celui utilisé par Visual Studio pour tous les nouveaux projets. Pour utiliser un autre environnement avec de nouveaux projets, utilisez la commande Définir cet environnement comme valeur par défaut pour les nouveaux projets. Dans le contexte d’un projet, vous pouvez toujours sélectionner un environnement spécifique. Pour plus d’informations, consultez Sélection d’un environnement pour un projet.

À droite de chaque environnement répertorié, un contrôle permet d’ouvrir une fenêtre Interactive pour cet environnement. (Dans Visual Studio 2017 15.5 et versions antérieures, un autre contrôle apparaît qui rafraîchit la base de données IntelliSense pour cet environnement. Pour plus de détails sur la base de données, veuillez consulter la rubrique référence de l’onglet de la fenêtre Environnements Python.)

Conseil

Lorsque vous élargissez suffisamment la fenêtre Environnements Python, vous voyez une vue plus complète de vos environnements qui peut être plus pratique à utiliser.

Capture d’écran de l’affichage développé de la fenêtre Environnements Python dans Visual Studio 2019.

Conseil

Lorsque vous élargissez suffisamment la fenêtre Environnements Python, vous voyez une vue plus complète de vos environnements qui peut être plus pratique à utiliser.

Capture d’écran de l’affichage développé de la fenêtre Environnements Python dans Visual Studio 2022.

Remarque

Bien que Visual Studio respecte l’option system-site-packages, il ne fournit pas de moyen permettant de la modifier à partir de Visual Studio.

Que faire si aucun environnement n’apparaît ?

Si vous ne voyez aucun environnement dans la fenêtre Environnements Python, cela signifie que Visual Studio n’a détecté aucune installation Python dans les emplacements standards. Peut-être avez-vous installé Visual Studio 2017 ou plus tard mais décoché toutes les options d’interpréteur dans les options de l’installateur pour la charge de travail Python. De même, vous avez peut-être installé Visual Studio 2015 ou plus tôt mais n’avez pas installé d’interpréteur manuellement. Pour plus d’informations, veuillez consulter la rubrique Installer des interpréteurs Python.

Si vous savez que vous avez un interpréteur Python sur votre ordinateur mais que Visual Studio (toute version) ne l’a pas détecté, utilisez la commande + Personnalisé pour spécifier manuellement l’emplacement de l’interpréteur. Pour plus d’informations, veuillez consulter la section expliquant comment identifier manuellement un environnement existant.

Types d’environnements

Vous pouvez utiliser Visual Studio avec des environnements globaux, virtuels et conda.

Environnements globaux

Chaque installation Python conserve son propre environnement global. Par exemple, Python 2.7, Python 3.6, Python 3.7, Anaconda 4.4.0, etc. Pour plus d’informations, veuillez consulter la rubrique Installer des interpréteurs Python.

Chaque environnement est composé de l’interpréteur Python spécifique, de sa bibliothèque standard et d’un ensemble de paquets préinstallés. Il contient également tous les autres paquets que vous installez tandis que l’environnement est activé. L’installation d’un package dans un environnement global le rend disponible à tous les projets qui utilisent cet environnement. Si l’environnement se trouve dans une zone protégée du système de fichiers (par exemple, dans c:\program files), l’installation des packages nécessite des privilèges d’administrateur.

Les environnements globaux sont disponibles à tous les projets sur l’ordinateur. Dans Visual Studio, vous sélectionnez un environnement global par défaut, qui est utilisé pour tous les projets, sauf si vous choisissez spécifiquement un autre environnement pour un projet. Pour plus d’informations, consultez Sélection d’un environnement pour un projet.

Environnements virtuels

Travailler dans un environnement mondial est un moyen simple de commencer. Avec le temps, les environnements peuvent devenir encombrés de nombreux paquets différents installés pour différents projets. L’encombrement peut causer des difficultés pour tester votre application de manière exhaustive avec un ensemble spécifique de paquets avec des versions connues. Mais ce genre d’environnement est ce que vous vous attendriez à configurer sur un serveur de build ou un serveur web. Des conflits peuvent également se produire quand deux projets nécessitent des packages incompatibles ou des versions distinctes du même package.

Pour ces raisons, les développeurs créent souvent un environnement virtuel pour un projet. Un environnement virtuel est un sous-dossier d’un projet qui contient une copie d’un interpréteur spécifique. Si vous activez l’environnement virtuel, tous les packages que vous installez sont installés uniquement dans le sous-dossier de cet environnement. Lorsque vous exécutez un programme Python au sein de l’environnement virtuel, vous pouvez être certain que le programme s’exécute uniquement avec ces paquets spécifiques.

Visual Studio prend en charge directement la création d’un environnement virtuel pour un projet. Si vous ouvrez un projet contenant un fichier requirements.txt, Visual Studio vous invite automatiquement à créer un environnement virtuel et à installer ces dépendances. Vous voyez le même comportement lorsque vous créez un projet à partir d’un modèle qui inclut un fichier requirements.txt.

À tout moment dans un projet ouvert, vous pouvez créer un environnement virtuel. Dans l’Explorateur de solutions, développez le nœud de projet, cliquez avec le bouton droit sur Environnements Python et choisissez Ajouter un environnement. Dans Ajouter un environnement, choisissez Environnement virtuel. Pour plus d’informations, consultez Créer un environnement virtuel.

Visual Studio fournit une commande pour générer un fichier requirements.txt à partir de l’environnement virtuel, ce qui permet de recréer facilement l’environnement sur d’autres ordinateurs. Pour plus d’informations, consultez Utiliser des environnements virtuels.

Environnements conda

Vous pouvez créer un environnement conda en utilisant l’outil conda, ou avec la gestion conda intégrée dans Visual Studio version 2017 15.7 et ultérieures. Un environnement conda nécessite Anaconda ou Miniconda. Ces plate-formes sont disponibles via l’installateur Visual Studio. Pour plus d’informations, veuillez consulter la rubrique Installer le support Python dans Visual Studio.

  1. Dans la fenêtre Environnements Python (ou depuis la barre d’outils Python), sélectionnez Ajouter un environnement pour ouvrir la boîte de dialogue Ajouter un environnement.

  2. Dans la boîte de dialogue Ajouter un environnement, sélectionnez l’onglet Environnement Conda :

    Capture d’écran de l'onglet Environnement Conda dans la boîte de dialogue Ajouter un environnement dans Visual Studio.

  3. Configurez les champs suivants :

    Champ Description
    Projet Identifie le projet dans lequel créer l’environnement.
    Nom Fournit le nom pour l’environnement conda.
    Ajouter des packages depuis Spécifie comment ajouter des paquets à l’environnement conda.
    - Fichier d’environnement : sélectionnez cette option si vous avez un fichier environment.yml qui décrit vos dépendances. Saisissez le nom du fichier ou parcourez (...) jusqu’à l’emplacement du fichier et sélectionnez le fichier.
    - Un ou plusieurs noms de paquets Anaconda : Sélectionnez cette option si vous souhaitez lister un ou plusieurs paquets Python ou versions Python.

    La liste des packages indique à conda de créer un environnement Python. Pour installer la dernière version de Python, utilisez la commande python. Pour installer une version spécifique, utilisez la commande python=,major>.<minor> comme dans python=3.7. Vous pouvez également utiliser le bouton de package pour sélectionner des versions de Python et des packages communs à partir d’une série de menus.
    Définir en tant qu’environnement actuel Active le nouvel environnement dans le projet sélectionné lorsque l’environnement est créé.
    Définir en tant qu’environnement par défaut pour les nouveaux projets Définit et active automatiquement l’environnement conda dans tous les nouveaux projets créés dans Visual Studio. Cette option est identique à l’option Définir cet environnement comme valeur par défaut pour les nouveaux projets dans la fenêtre Environnements Python.
    Afficher dans la fenêtre Environnements Python Spécifie s’il convient ou non d’afficher la fenêtre Environnements Python après la création de l’environnement.

    Important

    Lorsque vous créez un environnement conda, assurez-vous de spécifier au moins une version Python ou un paquet Python pour garantir que l’environnement contient un runtime Python. Vous pouvez utiliser un fichier environments.yml ou la liste de paquets. Si vous ne fournissez pas cette spécification, Visual Studio ignore l’environnement. L’environnement n’apparaît nulle part dans la fenêtre Environnements Python, il n’est pas défini comme l’environnement actuel pour un projet, et il n’est pas disponible en tant qu’environnement global.

    Si vous créez un environnement conda dans un projet contenant un fichier conda inforequirements.txt, Visual Studio n’installe pas automatiquement ces dépendances dans l’environnement conda nouvellement créé. Vous pouvez ensuite supprimer manuellement le sous-dossier de l’environnement de cet emplacement.

  4. Sélectionnez Créer.

    Vous pouvez surveiller la création de l’environnement conda dans la fenêtre Sortie . Après l’achèvement de la création, la sortie affiche certaines instructions de l’interface de ligne de commande (CLI), telles que activate env:

    Capture d’écran montrant la création réussie d’un environnement conda dans Visual Studio.

  5. Dans Visual Studio, vous pouvez activer un environnement conda pour votre projet de la même manière que vous le feriez pour tout autre environnement. Pour plus d’informations, consultez Sélection d’un environnement pour un projet.

  6. Pour installer plus de paquets dans l’environnement, utilisez l’onglet Paquets dans la fenêtre Environnements Python.

Remarque

Pour de meilleurs résultats avec les environnements conda, utilisez conda 4.4.8 ou une version ultérieure. Gardez à l’esprit que les versions de conda sont différentes des versions d’Anaconda. Vous pouvez installer des versions appropriées de Miniconda (Visual Studio 2019 et Visual Studio 2022) et Anaconda (Visual Studio 2017) via l’installateur de Visual Studio.

Pour voir la version de conda, où les environnements conda sont stockés, et d’autres informations, exécutez la commande conda info dans une invite de commande Anaconda (une invite de commande où Anaconda est dans le chemin) :

conda info

Vos dossiers d’environnement conda apparaissent comme suit :

       envs directories : C:\Users\user\.conda\envs
                          c:\anaconda3\envs
                          C:\Users\user\AppData\Local\conda\conda\envs

Puisque les environnements conda ne sont pas stockés avec un projet, ils se comportent de manière similaire aux environnements globaux. Par exemple, installer un nouveau paquet dans un environnement conda rend ce paquet disponible pour tous les projets qui utilisent l’environnement.

Pour Visual Studio 2017 version 15.6 et antérieures, vous pouvez utiliser les environnements conda en les pointant manuellement comme décrit dans Identifier manuellement un environnement existant.

Visual Studio 2017 versions 15.7 et ultérieures détecte automatiquement les environnements conda et les affiche dans la fenêtre Environnements Python comme décrit dans la section suivante.

Identifier manuellement un environnement existant

Utilisez les étapes suivantes pour identifier un environnement installé dans un emplacement non standard.

  1. Dans la fenêtre Environnements Python (ou depuis la barre d’outils Python), sélectionnez Ajouter un environnement pour ouvrir la boîte de dialogue Ajouter un environnement.

  2. Dans la boîte de dialogue Ajouter un environnement, sur l’onglet Environnement existant, définissez le champ Environnement à <Personnalisé> :

    Capture d’écran de la boîte de dialogue Ajouter un environnement Onglet Environnement existant dans Visual Studio, montrant comment définir le champ Environnement sur Personnalisé.

    Après avoir sélectionné la valeur <Personnalisé>, d’autres champs sont ajoutés à la boîte de dialogue.

  3. Définissez le champ Chemin d’accès du préfixe sur le chemin d’accès de l’interpréteur. Vous pouvez définir le champ en parcourant (...) l’emplacement du chemin d’accès.

    Capture d’écran montrant comment spécifier les détails d'un environnement personnalisé dans la boîte de dialogue Ajouter un environnement de Visual Studio.

  4. Après avoir sélectionné le chemin, les autres champs sont remplis. Examinez les valeurs et modifiez-les si nécessaire. Lorsque vous êtes prêt, sélectionnez Ajouter.

Vous pouvez également passer en revue et modifier les détails de l’environnement à tout moment dans la fenêtre Environnements Python.

  1. Dans la fenêtre Environnements Python, sélectionnez l’environnement, puis sélectionnez l’onglet Configurer.

  2. Après avoir effectué des modifications, sélectionnez la commande Appliquer.

Vous pouvez également supprimer l’environnement en utilisant la commande Supprimer. Pour plus d’informations, veuillez consulter l’Onglet Configurer. Cette commande n’est pas disponible pour les environnements détectés automatiquement.

Corriger ou supprimer les environnements non valides

Si Visual Studio trouve des entrées de registre pour un environnement, mais que le chemin vers l’interpréteur est invalide, alors la fenêtre Environnements Python affiche le nom de l’environnement dans un format de police barré comme montré dans l’image suivante :

Capture d’écran de la fenêtre Environnements Python montrant un environnement invalide dans Visual Studio.

Pour corriger un environnement que vous souhaitez conserver, essayez d’abord d’utiliser le processus de Réparation de l’installateur de l’environnement. La plupart des installateurs incluent une option de réparation.

Modifier le registre pour corriger un environnement

Si l’environnement Python n’a pas d’option de réparation, ou si vous souhaitez supprimer un environnement invalide, vous pouvez suivre les étapes suivantes pour modifier directement le registre. Visual Studio met automatiquement à jour la fenêtre Environnements Python quand vous apportez des modifications au Registre.

  1. Exécutez l’exécutable regedit.exe pour ouvrir l’éditeur du Registre.

  2. Parcourez le dossier de l’environnement qui correspond à votre configuration :

    Version Python Dossier
    Version 64 bits HKEY_LOCAL_MACHINE\SOFTWARE\Python ou HKEY_CURRENT_USER\Software\Python
    Version 32 bits HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Python.
    IronPython IronPython
  3. Développez la structure des nœuds de distribution et de version pour votre environnement :

    Distribution Nœud
    CPython PythonCore><Nœud de version>
    Anaconda ContinuumAnalytics><Nœud de version>
    IronPython <Nœud de version>
  4. Inspectez les valeurs sous le nœud InstallPath :

    Capture d’écran des entrées de registre d'une installation CPython typique dans l'éditeur du registre.

    • Si l’environnement existe toujours sur votre ordinateur, changez la valeur de l’entrée ExecutablePath pour le bon emplacement. Corrigez également les valeurs pour les entrées (Par défaut) et WindowedExecutablePath si nécessaire.
    • Si l’environnement n’existe plus sur votre ordinateur et que vous souhaitez le supprimer de la fenêtre Environnements Python, supprimez le nœud parent du numéro de version de l’entrée InstallPath. Vous pouvez voir un exemple de ce nœud dans l’image précédente. Dans l’exemple, ce nœud est 3.6.

    Attention

    Les paramètres invalides dans la clé HKEY_CURRENT_USER\SOFTWARE\Python ont la priorité sur les paramètres dans la clé HKEY_LOCAL_MACHINE\SOFTWARE\Python.

Supprimer ou retirer un environnement Python

Pour supprimer un projet Python, parcourez l’environnement Python dans Explorateur de solutions. Cliquez avec le bouton droit sur l’environnement Python que vous souhaitez supprimer et sélectionnez Supprimer.

Capture d’écran montrant comment supprimer un environnement Python dans Visual Studio.

Si vous souhaitez conserver l’environnement Python mais le supprimer de votre projet, sélectionnez Supprimer. Si vous souhaitez supprimer définitivement l’environnement, sélectionnez Supprimer.

Capture d’écran montrant comment supprimer ou supprimer un environnement Python dans Visual Studio.