J'avais deux versions de Python installées sur ma machine (versions 2.6 et 2.5). Je veux exécuter 2.6 pour un projet et 2.5 pour un autre.
Comment puis-je spécifier ce que je souhaite utiliser?
Je travaille sur Windows XP SP2.
python
windows
python-3.x
compatibility
python-2.x
Bilal Basharat
la source
la source
Réponses:
Exécuter une copie différente de Python est aussi simple que de démarrer le bon exécutable. Vous mentionnez que vous avez démarré une instance python, à partir de la ligne de commande, en tapant simplement
python
.Ce que cela fait sous Windows, c'est de parcourir la
%PATH%
variable d'environnement, en recherchant un exécutable, soit un fichier batch (.bat
), un fichier de commandes (.cmd
) ou un autre exécutable à exécuter (ceci est contrôlé par laPATHEXT
variable d'environnement), qui correspond au nom donné. Lorsqu'il trouve le fichier correct à exécuter, le fichier est en cours d'exécution.Maintenant, si vous avez installé deux versions de python 2.5 et 2.6, le chemin contiendra leurs deux répertoires, quelque chose comme,
PATH=c:\python\2.5;c:\python\2.6
mais Windows arrêtera d'examiner le chemin lorsqu'il trouve une correspondance.Ce que vous devez vraiment faire est d'appeler explicitement une ou les deux applications, telles que
c:\python\2.5\python.exe
ouc:\python\2.6\python.exe
.L'autre alternative est de créer un raccourci vers l'
python.exe
appelant respectif de l'un d'euxpython25
et de l'autrepython26
; vous pouvez alors simplement exécuterpython25
sur votre ligne de commande.la source
Ajout de deux autres solutions au problème:
#! c:\[path to Python 2.5]\python.exe
- pour les scripts que vous souhaitez exécuter avec Python 2.5#! c:\[path to Python 2.6]\python.exe
- pour les scripts que vous souhaitez exécuter avec Python 2.6ou au lieu d'exécuter la
python
commande, exécutez la commande pylauncher command (py
) en spécifiant la version de Python souhaitée;py -2.6
- version 2.6py -2
- dernière version installée 2.xpy -3.4
- version 3.4py -3
- dernière version installée 3.xvirtualenv -p c:\[path to Python 2.5]\python.exe [path where you want to have virtualenv using Python 2.5 created]\[name of virtualenv]
virtualenv -p c:\[path to Python 2.6]\python.exe [path where you want to have virtualenv using Python 2.6 created]\[name of virtualenv]
par exemple
virtualenv -p c:\python2.5\python.exe c:\venvs\2.5
virtualenv -p c:\python2.6\python.exe c:\venvs\2.6
alors vous pouvez activer le premier et travailler avec Python 2.5 comme ça
c:\venvs\2.5\activate
et quand vous voulez passer à Python 2.6 vous faites
la source
c:\venvs\2.5\scripts\activate
. C'est sur Windows 10 si cela fait une différence. Autre que cela, fonctionne comme un charme, merci.À partir de Python 3.3, il y a le lanceur officiel Python pour Windows ( http://www.python.org/dev/peps/pep-0397/ ). Maintenant, vous pouvez utiliser
#!pythonX
pour déterminer la version souhaitée de l'interpréteur également sous Windows. Voir plus de détails dans mon autre commentaire ou lire la PEP 397.Résumé: Les
py script.py
lancements de la version Python indiqué dans#!
ou Python 2#!
s'il manque. Lepy -3 script.py
lance le Python 3.la source
.py
extension. Le lanceur lui-même est installé dansC:\Windows
celui qui est déjà dans lePATH
. De cette façon, laPATH
variable n'a pas non plus besoin d'être modifiée.Selon @alexander, vous pouvez créer un ensemble de liens symboliques comme ci-dessous. Placez-les quelque part qui est inclus dans votre chemin afin qu'ils puissent être facilement invoqués
Tant que c: \ bin ou l'endroit où vous les avez placés se trouve sur votre chemin, vous pouvez maintenant aller
la source
mklink
est uniquement disponible nativement dans Windows Vista / 2008 +. Sur XP et Server 2003, un "hardlink" pourrait être créé à la place en utilisantfsutil hardlink create <new filename> <existing filename>
et en plaçant ou en déplaçant le <nouveau nom de fichier> quelque part dans votre chemin. Cependant, les liens physiques ne fonctionnent que sur le même lecteur.installer python
variable d'environnement
PYTHON2_HOME: C:\Python27
PYTHON3_HOME: C:\Python36
Path: %PYTHON2_HOME%;%PYTHON2_HOME%\Scripts;%PYTHON3_HOME%;%PYTHON3_HOME%\Scripts;
renommer le fichier
pépin
python2 -m pip install package
python3 -m pip install package
la source
python
commande serait déroutante pour le système d'exploitation.Par exemple pour le type de version 3.6
py -3.6
. Si vous avez également des versions 32 bits et 64 bits, vous pouvez simplement taperpy -3.6-64
oupy -3.6-32
.la source
py
exécutable - est-ce un ajout pour Windows uniquement? Est-il possible de l'intégrer dans un script de ligne de commande multiplateforme qui a en haut:#!/usr/bin/env python3
par exemple?Lorsque vous installez Python, il n'écrasera pas les autres installations d'autres versions majeures. Ainsi, l'installation de Python 2.5.x n'écrasera pas Python 2.6.x, bien que l'installation de 2.6.6 écrasera 2.6.5.
Vous pouvez donc simplement l'installer. Ensuite, vous appelez la version Python souhaitée. Par exemple:
pour Python 2.5 sous windows et
pour Python 2.6 sous Windows, ou
ou
sous
WindowsUnix (y compris Linux et OS X).Lorsque vous installez sur Unix (y compris Linux et OS X), vous obtiendrez une
python
commande générique installée, qui sera la dernière que vous avez installée. Ce n'est généralement pas un problème car la plupart des scripts appelleront explicitement /usr/local/bin/python2.5 ou quelque chose juste pour se protéger contre cela. Mais si vous ne voulez pas faire cela, et vous ne le faites probablement pas, vous pouvez l'installer comme ceci:Notez le "altinstall" qui signifie qu'il va l'installer, mais il ne remplacera pas la
python
commande.Sur Windows, vous n'obtenez pas de
python
commande globale pour autant que je sache, donc ce n'est pas un problème.la source
C:\Python2.5
ouC:\Python2.6
apparaît dans votrePATH
variable d'environnement, la version correspondante de Python deviendra la version par défaut sauf si vous la remplacez en spécifiant explicitement un chemin différent vers le .exe que vous souhaitez utiliser.Je recommande fortement le projet pyenv-win .
Grâce au travail de kirankotari , nous avons maintenant une version Windows de pyenv.
la source
Voici un hack rapide:
C:\Users\Your name
)name_of_your_shortcut.lnk
(j'utilisep27.lnk
)la source
cp c: \ python27 \ bin \ python.exe comme python2.7.exe
cp c: \ python34 \ bin \ python.exe comme python3.4.exe
ils sont tous dans le chemin du système, choisissez la version que vous souhaitez exécuter
la source
Utilisation d'un fichier batch pour basculer, facile et efficace sous Windows 7. J'utilise ceci:
Dans la boîte de dialogue des variables d'environnement (C: \ Windows \ System32 \ SystemPropertiesAdvanced.exe),
Dans la section Variables utilisateur
ajouté% pathpython% à la variable d'environnement path
supprimé toutes les références aux chemins python
Dans la section Variables système
J'ai créé des fichiers batch pour chaque installation python (exemple pour 3.4 x64
Nom = SetPathPython34x64 !!! ToExecuteAsAdmin.bat ;-) juste pour se souvenir.
Contenu du fichier =
Pour basculer entre les versions, j'exécute le fichier batch en mode administrateur.
!!!!! Les modifications sont effectives pour les fenêtres d'invite de commande SUIVANTES OUVERTES. !!!
Donc, j'ai un contrôle exact là-dessus.
la source
Le moyen le plus simple d'exécuter plusieurs versions de python sur Windows est décrit ci-dessous comme suit: -
1) Téléchargez les dernières versions de python sur python.org/downloads en sélectionnant la version appropriée pour votre système.
2) Exécutez le programme d'installation et sélectionnez Ajouter python 3.x au chemin pour définir le chemin automatiquement dans python 3 (il vous suffit de cocher la case). Pour python 2, ouvrez votre programme d'installation de python 2, sélectionnez les préférences de votre choix, mais n'oubliez pas de définir Ajouter python.exe au chemin à Sera installé sur le disque dur local , cliquez simplement sur Suivant et attendez que le programme d'installation se termine.
3) Lorsque les deux installations sont terminées. Faites un clic droit sur mon ordinateur - Aller aux propriétés - Sélectionnez Paramètres système avancés - Aller aux variables d'environnement - Cliquez sur nouveau sous Variables système et ajouter une nouvelle variable système avec nom de variable comme PY_PYTHON et définissez cette valeur de la variable à 3 . Cliquez maintenant sur OK et vous devriez avoir terminé.
4) Maintenant, pour tester cela, ouvrez l' invite de commande . Une fois que vous y êtes, tapez python ou py , cela devrait ouvrir python3 .
5) Quittez maintenant python3 en tapant exit () . Maintenant, tapez py -2, cela devrait ouvrir python 2.
Si rien de tout cela ne fonctionne, redémarrez l'ordinateur et si le problème persiste, désinstallez tout et répétez les étapes.
Merci.
la source
Vous pouvez créer graphiquement différents environnements de développement python à partir d'Anaconda Navigator. J'ai eu le même problème en travaillant avec différentes versions de python, j'ai donc utilisé le navigateur anaconda pour créer différents environnements de développement python et utilisé différentes versions de python dans chaque environnement.
Voici la documentation d'aide pour cela.
https://docs.anaconda.com/anaconda/navigator/tutorials/manage-environments/
la source
En utilisant Rapid Environment Editor, vous pouvez pousser vers le haut le répertoire de l'installation Python souhaitée. Par exemple, pour démarrer python à partir du répertoire c: \ Python27, assurez-vous que le répertoire c: \ Python27 se trouve avant ou au-dessus du répertoire c: \ Python36 dans la variable d'environnement Path. D'après mon expérience, le premier exécutable python trouvé dans l'environnement Path est en cours d'exécution. Par exemple, MSYS2 est installé avec Python27 et depuis que j'ai ajouté C: \ MSYS2 au chemin avant C: \ Python36, le python.exe du dossier C: \ MSYS2 .... est en cours d'exécution.
la source
Appelez simplement le bon exécutable
la source
python
entrer dans le shell, essayezpython2.5
oupython2.6
. Je ne suis pas un utilisateur de Windows, mais sur unix / usr / bin / python est généralement un alias de l'exécutable pleinement qualifié, je suppose que python dans Windows est installé de la même manière