{"id":5871,"date":"2024-08-31T20:13:46","date_gmt":"2024-08-31T20:13:46","guid":{"rendered":"https:\/\/wikiform.fr\/codespace\/introduction-a-l-environnement-virtuel-python\/"},"modified":"2024-08-31T20:13:49","modified_gmt":"2024-08-31T20:13:49","slug":"introduction-a-l-environnement-virtuel-python","status":"publish","type":"post","link":"https:\/\/wikiform.fr\/codespace\/introduction-a-l-environnement-virtuel-python\/","title":{"rendered":"11.1 Introduction \u00e0 l&rsquo;Environnement Virtuel Python"},"content":{"rendered":"\u00ab\u00a0`html\n\n<p><strong>Introduction \u00e0 l&rsquo;Environnement Virtuel Python<\/strong> est une \u00e9tape cruciale pour tout d\u00e9veloppeur souhaitant travailler de mani\u00e8re organis\u00e9e et professionnelle avec Python. Dans ce tutoriel, nous allons explorer ce qu&rsquo;est un environnement virtuel, comment le cr\u00e9er, et comment l&rsquo;utiliser efficacement \u00e0 travers des exemples pratiques.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Qu&rsquo;est-ce qu&rsquo;un Environnement Virtuel en Python ?<\/h2>\n\n\n\n<div id=\"videoContainer\" style=\"position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; background: #000;\">\n  <iframe src=\"https:\/\/player.vimeo.com\/video\/583424253?dnt=1&#038;fullscreen=0&#038;pip=0\" loading=\"lazy\" loading=\"lazy\" style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%;\" frameborder=\"0\" allow=\"autoplay\" allowfullscreen id=\"vimeoPlayer\"><\/iframe>\n  \n  <!-- Popup Desktop -->\n  <div id=\"popupContainer\" class=\"desktop-popup\" style=\"display: none; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 90%; max-width: 400px; padding: 20px; border-radius: 10px; text-align: center; box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1); background-color: rgba(255, 255, 255, 0.95); box-sizing: border-box;\">\n    <h2 style=\"color: #333; font-size: 1.5em; margin: 10px 0;\" id=\"profitez-de-loffre-spciale-\">Profitez de l\u2019offre sp\u00e9ciale !<\/h2>\n    <p style=\"color: #e74c3c; font-size: 1.2em; margin: 10px 0;\">Obtenez notre cours pour seulement <strong id=\"price\">29.5\u20ac<\/strong> au lieu de <del>59\u20ac<\/del> !<\/p>\n    <a href=\"https:\/\/wikiform.fr\/application\/learnify\/home\/course\/devenir-un-d%C3%A9veloppeur-python\/144\" target=\"_blank\" style=\"display: block; padding: 10px 20px; background-color: #701CF5; color: #fff; text-decoration: none; border-radius: 5px; font-weight: bold; font-size: 1em; margin: 20px auto;\" rel=\"noopener\">Commencer maintenant<\/a>\n    <button onclick=\"closePopup()\" style=\"padding: 10px 20px; font-size: 1em;\">Fermer<\/button>\n  <\/div>\n\n  <!-- Popup Mobile -->\n  <div id=\"popupContainerMobile\" class=\"mobile-popup\" style=\"display: none; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 80%; max-width: 300px; padding: 15px; border-radius: 10px; text-align: center; box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1); background-color: rgba(255, 255, 255, 0.95); box-sizing: border-box;\">\n    <p style=\"color: #e74c3c; font-size: 1em; margin: 5px 0;\">Cours sp\u00e9cial \u00e0 <strong id=\"priceMobile\">29.5\u20ac<\/strong> au lieu de <del>59\u20ac<\/del> !<\/p>\n    <a href=\"https:\/\/wikiform.fr\/application\/learnify\/home\/course\/devenir-un-d%C3%A9veloppeur-python\/144\" target=\"_blank\" style=\"display: inline-block; padding: 8px 15px; background-color: #701CF5; color: #fff; text-decoration: none; border-radius: 5px; font-weight: bold; font-size: 0.9em;\" rel=\"noopener\">Commencer maintenant<\/a>\n    <button onclick=\"closePopup()\" style=\"padding: 5px 10px; font-size: 0.9em;\">Fermer<\/button>\n  <\/div>\n<\/div>\n\n<script src=\"https:\/\/player.vimeo.com\/api\/player.js\"><\/script>\n<script>\ndocument.addEventListener('DOMContentLoaded', function() {\n    var iframe = document.getElementById('vimeoPlayer');\n    var player = new Vimeo.Player(iframe);\n    var isPopupDisplayed = false;\n\n    player.on('play', function() {\n        if (!isPopupDisplayed) {\n            player.on('timeupdate', function(data) {\n                if (data.seconds >= 120 && !isPopupDisplayed) { \/\/ 120 seconds = 2 minutes\n                    \/\/ Pause the video and display the popup\n                    player.pause().then(function() {\n                        if (window.innerWidth > 768) {\n                            document.querySelector('.desktop-popup').style.display = 'block';\n                        } else {\n                            document.querySelector('.mobile-popup').style.display = 'block';\n                        }\n                        fetchPriceAndUpdatePopup();\n                        isPopupDisplayed = true;\n                    });\n                }\n            });\n        }\n    });\n\n    function fetchPriceAndUpdatePopup() {\n        fetch('https:\/\/wikiform.fr\/application\/learnify\/home\/course\/devenir-un-d%C3%A9veloppeur-python\/144')\n            .then(response => response.text())\n            .then(html => {\n                var parser = new DOMParser();\n                var fetchedDoc = parser.parseFromString(html, 'text\/html');\n                var priceElement = fetchedDoc.querySelector('.ammount .fw-500');\n                var originalPriceElement = fetchedDoc.querySelector('.ammount del');\n                var price = priceElement ? priceElement.textContent.trim() : '29.5\u20ac';\n                var originalPrice = originalPriceElement ? originalPriceElement.textContent.trim() : '59\u20ac';\n\n                document.getElementById('price').textContent = price;\n                document.getElementById('priceMobile').textContent = price;\n                document.querySelector('.desktop-popup del').textContent = originalPrice;\n                document.querySelector('.mobile-popup del').textContent = originalPrice;\n            })\n            .catch(error => console.error('Error fetching the price:', error));\n    }\n\n    function closePopup() {\n        document.querySelector('.desktop-popup').style.display = 'none';\n        document.querySelector('.mobile-popup').style.display = 'none';\n        player.play(); \/\/ Allows resuming the video only after closing the popup\n    }\n});\n<\/script>\n\n\n\n<p>Un <strong>Environnement Virtuel Python<\/strong> est un environnement distinct qui permet de g\u00e9rer les d\u00e9pendances d&rsquo;un projet de mani\u00e8re ind\u00e9pendante. Cela signifie que chaque projet peut avoir ses propres versions de biblioth\u00e8ques et modules, sans interf\u00e9rer avec les autres projets ou la configuration globale de Python sur votre syst\u00e8me. C&rsquo;est particuli\u00e8rement utile lorsque vous travaillez sur plusieurs projets avec des exigences diff\u00e9rentes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Pourquoi Utiliser un Environnement Virtuel ?<\/h3>\n\n\n\n<p>L&rsquo;utilisation d&rsquo;environnements virtuels offre plusieurs avantages :<\/p>\n<ul>\n  <li>\u00c9vite les conflits de version entre diff\u00e9rents projets.<\/li>\n  <li>Facilite la gestion des d\u00e9pendances sp\u00e9cifiques \u00e0 chaque projet.<\/li>\n  <li>Permet de reproduire l&rsquo;environnement de d\u00e9veloppement dans diff\u00e9rents contextes (d\u00e9veloppement, test, production).<\/li>\n<\/ul>\n<p>Pour plus d&rsquo;information sur les premi\u00e8res \u00e9tapes avec Python, consultez notre guide pour <a href=\"https:\/\/wikiform.fr\/codespace\/installer-python-sur-mac-2024-guide-complet\">installer Python sur Mac<\/a>, <a href=\"https:\/\/wikiform.fr\/codespace\/installer-python-sur-windows-facilement\">installer Python sur Windows<\/a> et <a href=\"https:\/\/wikiform.fr\/codespace\/installer-python-sur-linux-ubuntu-etape-par-etape\">installer Python sur Linux<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Cr\u00e9ation d&rsquo;un Environnement Virtuel<\/h2>\n\n\n\n<p>La cr\u00e9ation d&rsquo;un <strong>Environnement Virtuel Python<\/strong> est simple gr\u00e2ce au module int\u00e9gr\u00e9 <code>venv<\/code>. Voici les \u00e9tapes pour cr\u00e9er un environnement virtuel :<\/p>\n\n\n\n<pre class=\"wp-block-code lang-bash\"><code># Cr\u00e9er un r\u00e9pertoire pour votre projet\nmkdir mon_projet\ncd mon_projet\n\n# Cr\u00e9er l'environnement virtuel\npython3 -m venv env\n\n# Activer l'environnement virtuel\n# Sur Windows\nenv\\Scripts\\activate\n\n# Sur macOS\/Linux\nsource env\/bin\/activate\n<\/code><\/pre>\n\n\n\n<p>Pour en savoir plus sur l&rsquo;utilisation des modules en Python, consultez l&rsquo;article <a href=\"https:\/\/wikiform.fr\/codespace\/utiliser-les-modules-de-bibliotheque-python\">Utiliser les Modules de Biblioth\u00e8que Python<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Installer des Packages dans l&rsquo;Environnement Virtuel<\/h3>\n\n\n\n<p>Une fois l&rsquo;environnement virtuel activ\u00e9, vous pouvez installer des packages en utilisant <code>pip<\/code>, et ils seront isol\u00e9s de l&rsquo;installation globale de Python. Voici comment installer un package :<\/p>\n\n\n\n<pre class=\"wp-block-code lang-bash\"><code># Exemple d'installation de Flask\npip install Flask\n\n# V\u00e9rifier les packages install\u00e9s\npip list\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">G\u00e9rer les D\u00e9pendances avec un Fichier \u00ab\u00a0requirements.txt\u00a0\u00bb<\/h3>\n\n\n\n<p>Il est essentiel de consigner les d\u00e9pendances de votre projet dans un fichier <code>requirements.txt<\/code> pour assurer une installation facile et coh\u00e9rente des d\u00e9pendances. Vous pouvez cr\u00e9er ce fichier avec la commande suivante :<\/p>\n\n\n\n<pre class=\"wp-block-code lang-bash\"><code># G\u00e9n\u00e9rer le fichier requirements.txt\npip freeze > requirements.txt\n<\/code><\/pre>\n\n\n\n<p>Pour installer les d\u00e9pendances \u00e0 partir de ce fichier dans un nouvel environnement virtuel, utilisez :<\/p>\n\n\n\n<pre class=\"wp-block-code lang-bash\"><code>pip install -r requirements.txt\n<\/code><\/pre>\n\n\n\n<p>Pour des informations d\u00e9taill\u00e9es sur <a href=\"https:\/\/wikiform.fr\/codespace\/utilisation-des-docstrings-en-python-guide\">l&rsquo;utilisation des docstrings en Python<\/a>, consultez notre article d\u00e9di\u00e9 sur le sujet.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">D\u00e9sactiver un Environnement Virtuel<\/h2>\n\n\n\n<p>Une fois que vous avez termin\u00e9 de travailler dans votre environnement virtuel, vous pouvez le d\u00e9sactiver en utilisant la commande suivante :<\/p>\n\n\n\n<pre class=\"wp-block-code lang-bash\"><code># D\u00e9sactiver l'environnement virtuel\ndeactivate\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Utilisation Avanc\u00e9e<\/h2>\n\n\n\n<p>Outre la gestion de packages de base, les <strong>environnements virtuels Python<\/strong> peuvent \u00eatre utilis\u00e9s pour des configurations plus complexes, telles que :<\/p>\n<ul>\n  <li>Utilisation de <code>virtualenvwrapper<\/code> pour simplifier la cr\u00e9ation et la gestion des environnements virtuels.<\/li>\n  <li>Configuration de diff\u00e9rents environnements pour le d\u00e9veloppement et la production.<\/li>\n  <li>Automatisation de la gestion des environnements avec des scripts.<\/li>\n<\/ul>\n<p>Pour un guide plus d\u00e9taill\u00e9, consultez l&rsquo;article <a href=\"https:\/\/wikiform.fr\/codespace\/installation-de-virtualenv-pour-python-guide\">Installation de Virtualenv pour Python<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Exemple d&rsquo;Utilisation de virtualenvwrapper<\/h3>\n\n\n\n<p>Voici un exemple simple de l&rsquo;utilisation de <code>virtualenvwrapper<\/code> pour g\u00e9rer vos environnements virtuels :<\/p>\n\n\n\n<pre class=\"wp-block-code lang-bash\"><code># Installation de virtualenvwrapper\npip install virtualenvwrapper\n\n# Ajout des variables dans votre fichier shell (e.g., .bashrc ou .zshrc)\nexport WORKON_HOME=$HOME\/.virtualenvs\nexport VIRTUALENVWRAPPER_PYTHON=$(which python3)\nsource $(which virtualenvwrapper.sh)\n\n# Cr\u00e9er un nouvel environnement\nmkvirtualenv mon_projet_env\n\n# Activer l'environnement\nworkon mon_projet_env\n\n# D\u00e9sactiver l'environnement\ndeactivate\n\n# Supprimer un environnement\nrmvirtualenv mon_projet_env\n<\/code><\/pre>\n\n\n\n<p>Si vous d\u00e9butez en programmation Python, consultez notre article sur <a href=\"https:\/\/wikiform.fr\/codespace\/premier-programme-python-hello-world\">votre premier programme Python<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>Les <strong>environnements virtuels en Python<\/strong> sont une excellente fa\u00e7on de garder vos projets organis\u00e9s et exempts de conflits de d\u00e9pendances. En utilisant <code>venv<\/code> ou des outils avanc\u00e9s comme <code>virtualenvwrapper<\/code>, vous pouvez facilement g\u00e9rer diff\u00e9rents projets avec des exigences vari\u00e9es et garder votre workflow de d\u00e9veloppement propre et efficace.<\/p>\n<p>Pour approfondir vos connaissances et d\u00e9couvrir des astuces avanc\u00e9es sur la gestion des environnements virtuels, consultez notre article compl\u00e9mentaire sur <a href=\"https:\/\/wikiform.fr\/codespace\/introduction-a-l-environnement-virtuel-python\">la gestion des environnements Python<\/a>.<\/p>\n\n\n\n<a href=\"https:\/\/wikiform.fr\/application\/learnify\/home\/course\/devenir-un-d%C3%A9veloppeur-python\/144\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/wikiform.fr\/codespace\/wp-content\/uploads\/2024\/07\/learnify-formation-PYTHON-offre-50.gif\" loading=\"lazy\" alt=\"Learnify Formation Python Offre 50%\" title=\"\"><\/a>\n.\n\u00ab\u00a0`","protected":false},"excerpt":{"rendered":"<p>\u00ab\u00a0`html Introduction \u00e0 l&rsquo;Environnement Virtuel Python est une \u00e9tape cruciale pour tout d\u00e9veloppeur souhaitant travailler de mani\u00e8re organis\u00e9e et professionnelle avec Python. Dans ce tutoriel,&#8230;<\/p>\n","protected":false},"author":4,"featured_media":2929,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[24],"tags":[18],"class_list":["post-5871","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-python","tag-tutoriels"],"acf":[],"_titre_de_la_formation":null,"_description_":null,"_objectifs_pedagogiques":null,"_programme_":null,"_url_de_limage":null,"_materiel_necessaire":null,"_modalites_devaluation_des_acquis":null,"_moyens_pedagogiques_et_techniques":null,"_accessibilite_":null,"_formateur_":null,"menu_order":0,"_links":{"self":[{"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/posts\/5871","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/comments?post=5871"}],"version-history":[{"count":1,"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/posts\/5871\/revisions"}],"predecessor-version":[{"id":5872,"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/posts\/5871\/revisions\/5872"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/media\/2929"}],"wp:attachment":[{"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/media?parent=5871"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/categories?post=5871"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/tags?post=5871"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}