{"id":5875,"date":"2024-09-01T16:13:45","date_gmt":"2024-09-01T16:13:45","guid":{"rendered":"https:\/\/wikiform.fr\/codespace\/creer-et-utiliser-venv-sur-windows-avec-python\/"},"modified":"2024-09-01T16:13:49","modified_gmt":"2024-09-01T16:13:49","slug":"creer-et-utiliser-venv-sur-windows-avec-python","status":"publish","type":"post","link":"https:\/\/wikiform.fr\/codespace\/creer-et-utiliser-venv-sur-windows-avec-python\/","title":{"rendered":"11.3 Cr\u00e9er et Utiliser venv sur Windows avec Python"},"content":{"rendered":"\u00ab\u00a0`html\n\n<p><strong>Cr\u00e9er et Utiliser venv sur Windows avec Python<\/strong> est une \u00e9tape essentielle pour isoler les d\u00e9pendances de vos projets Python et garantir que les versions des paquets utilis\u00e9s par vos projets ne causent pas de conflits. Apprenons comment cr\u00e9er, activer et utiliser des environnements virtuels sous Windows.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Introduction \u00e0 <strong>venv<\/strong> sur Windows<\/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\/583425287?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 environnement virtuel (venv) dans Python est un environnement qui permet d&rsquo;installer des modules Python de mani\u00e8re isol\u00e9e par projet. Cela \u00e9vite les conflits entre versions de modules et simplifie la gestion des d\u00e9pendances, notamment sur un m\u00eame syst\u00e8me o\u00f9 peuvent coexister plusieurs projets n\u00e9cessitant diff\u00e9rentes versions des m\u00eames modules.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Cr\u00e9er un Environnement Virtuel<\/h3>\n\n<p>Pour cr\u00e9er un environnement virtuel sur Windows, il suffit d&rsquo;utiliser la commande <code>venv<\/code>. Tout d&rsquo;abord, assurez-vous que Python est correctement install\u00e9 sur votre syst\u00e8me. Ensuite, suivez ces instructions :<\/p>\n<!-- \/wp:post-content -->\n\n<!-- wp:code {\"className\":\"lang-shell\"} -->\n<pre class=\"wp-block-code lang-shell\"><code>python -m venv chemin_vers_votre_venv<\/code><\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:paragraph -->\n<p>Remplacez <code>chemin_vers_votre_venv<\/code> par le chemin o\u00f9 vous souhaitez cr\u00e9er votre environnement virtuel. Par exemple :<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:code {\"className\":\"lang-shell\"} -->\n<pre class=\"wp-block-code lang-shell\"><code>python -m venv C:\\Users\\VotreNomUtilisateur\\monenv<\/code><\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Activer l&rsquo;Environnement Virtuel<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Une fois l&rsquo;environnement virtuel cr\u00e9\u00e9, vous devez l&rsquo;activer. Pour ce faire, utilisez les commandes suivantes en fonction de votre shell :<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"level\":4} -->\n<h4 class=\"wp-block-heading\">Command Prompt<\/h4>\n<!-- \/wp:heading -->\n\n<!-- wp:code {\"className\":\"lang-shell\"} -->\n<pre class=\"wp-block-code lang-shell\"><code>C:\\Users\\VotreNomUtilisateur\\monenv\\Scripts\\activate.bat<\/code><\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:heading {\"level\":4} -->\n<h4 class=\"wp-block-heading\">PowerShell<\/h4>\n<!-- \/wp:heading -->\n\n<!-- wp:code {\"className\":\"lang-shell\"} -->\n<pre class=\"wp-block-code lang-shell\"><code>C:\\Users\\VotreNomUtilisateur\\monenv\\Scripts\\Activate.ps1<\/code><\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Utiliser l&rsquo;Environnement Virtuel<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Avec l&rsquo;environnement virtuel activ\u00e9, toute installation de modules Python via <code>pip<\/code> sera localis\u00e9e \u00e0 cet environnement virtuel. Par exemple, pour installer un module :<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:code {\"className\":\"lang-shell\"} -->\n<pre class=\"wp-block-code lang-shell\"><code>pip install nom_du_module<\/code><\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:paragraph -->\n<p>Pour d\u00e9sactiver l&rsquo;environnement virtuel, utilisez la commande :<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:code {\"className\":\"lang-shell\"} -->\n<pre class=\"wp-block-code lang-shell\"><code>deactivate<\/code><\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">G\u00e9rer les D\u00e9pendances avec <code>requirements.txt<\/code><\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Pour r\u00e9pliquer les d\u00e9pendances d&rsquo;un environnement vers un autre, vous pouvez utiliser un fichier <code>requirements.txt<\/code>. Pour g\u00e9n\u00e9rer ce fichier, ex\u00e9cutez :<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:code {\"className\":\"lang-shell\"} -->\n<pre class=\"wp-block-code lang-shell\"><code>pip freeze > requirements.txt<\/code><\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:paragraph -->\n<p>Pour installer les d\u00e9pendances list\u00e9es dans ce fichier, utilisez :<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:code {\"className\":\"lang-shell\"} -->\n<pre class=\"wp-block-code lang-shell\"><code>pip install -r requirements.txt<\/code><\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Exemple Concret d&rsquo;Utilisation de <code>venv<\/code> dans un Projet<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Pour mieux comprendre l&rsquo;utilit\u00e9 de <code>venv<\/code>, envisageons un projet concret. Imaginez que vous travaillez sur une application web en Django. Voici comment structurer votre projet et utiliser <code>venv<\/code> :<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:code {\"className\":\"lang-shell\"} -->\n<pre class=\"wp-block-code lang-shell\"><code># Se d\u00e9placer dans le r\u00e9pertoire du projet\ncd C:\\Users\\VotreNomUtilisateur\\mon_projet_django\n\n# Cr\u00e9er l'environnement virtuel\npython -m venv venv\n\n# Activer l'environnement virtuel\nC:\\Users\\VotreNomUtilisateur\\mon_projet_django\\venv\\Scripts\\activate.bat\n\n# Installer Django dans l'environnement virtuel\npip install django\n\n# D\u00e9marrer un nouveau projet Django\ndjango-admin startproject mysite\n<\/code><\/pre>\n<!-- \/wp:code -->\n\n<!-- wp:paragraph -->\n<p>Gr\u00e2ce \u00e0 cette isolation, toutes les d\u00e9pendances sp\u00e9cifi\u00e9es pour ce projet ne rivaliseront pas avec celles d&rsquo;autres projets sur votre machine. Pour plus d&rsquo;informations concernant l&rsquo;installation de Python, vous pouvez consulter notre <a href=\"https:\/\/wikiform.fr\/codespace\/installer-python-sur-windows-facilement\" target=\"_blank\" rel=\"noopener\">guide complet sur l&rsquo;installation de Python sur Windows<\/a>.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"level\":3} -->\n<h3 class=\"wp-block-heading\">Meilleures Pratiques<\/h3>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Voici quelques meilleures pratiques lors de l&rsquo;utilisation de <code>venv<\/code> :<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:list -->\n<ul>\n    <li>Cr\u00e9er un environnement virtuel par projet pour une meilleure gestion des d\u00e9pendances.<\/li>\n    <li>Utiliser des fichiers <code>requirements.txt<\/code> pour faciliter la reproduction des environnements.<\/li>\n    <li>Activer l&rsquo;environnement virtuel avant toute installation de paquets avec <code>pip<\/code>.<\/li>\n    <li>Ajouter le dossier de l&rsquo;environnement virtuel (par exemple, <code>venv<\/code>) au fichier <code>.gitignore<\/code> de vos projets versionn\u00e9s avec Git.<\/li>\n<\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p>En suivant ces recommandations et en utilisant <code>venv<\/code>, vous garantirez que vos projets Python restent bien organis\u00e9s et que leurs d\u00e9pendances soient g\u00e9r\u00e9es de mani\u00e8re professionnelle.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading -->\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Les environnements virtuels (<code>venv<\/code>) sont un outil indispensable pour tout d\u00e9veloppeur Python souhaitant maintenir des projets propres et sans conflits de d\u00e9pendances. Apprenez \u00e0 les ma\u00eetriser et appliquez ces pratiques pour optimiser vos projets Python. Pour plus d&rsquo;informations et de tutoriels sur les environnements virtuels, consultez notre <a href=\"https:\/\/wikiform.fr\/codespace\/creer-et-utiliser-venv-sur-windows-avec-python\" target=\"_blank\" rel=\"noopener\">guide d\u00e9taill\u00e9 sur la cr\u00e9ation et l&rsquo;utilisation de venv<\/a>. Pour plus d&rsquo;informations sur des sujets connexes, n&rsquo;h\u00e9sitez pas \u00e0 explorer des guides sur <a href=\"https:\/\/wikiform.fr\/codespace\/structure-conditionnelle-if-else-en-python\" target=\"_blank\" rel=\"noopener\">structure conditionnelle if-else en Python<\/a> et la <a href=\"https:\/\/wikiform.fr\/codespace\/utiliser-les-operateurs-de-comparaison-en-python\" target=\"_blank\" rel=\"noopener\">utilisation des op\u00e9rateurs de comparaison en Python<\/a>.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:html -->\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<!-- \/wp:html -->\n\u00ab\u00a0`","protected":false},"excerpt":{"rendered":"<p>\u00ab\u00a0`html Cr\u00e9er et Utiliser venv sur Windows avec Python est une \u00e9tape essentielle pour isoler les d\u00e9pendances de vos projets Python et garantir que les&#8230;<\/p>\n","protected":false},"author":4,"featured_media":2911,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[24],"tags":[18],"class_list":["post-5875","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\/5875","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=5875"}],"version-history":[{"count":1,"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/posts\/5875\/revisions"}],"predecessor-version":[{"id":5876,"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/posts\/5875\/revisions\/5876"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/media\/2911"}],"wp:attachment":[{"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/media?parent=5875"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/categories?post=5875"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wikiform.fr\/codespace\/wp-json\/wp\/v2\/tags?post=5875"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}