169 votes

Puis-je installer Python 3.x et 2.x sur le même ordinateur Windows ?

Je suis sous Windows et le shell/OS exécute automatiquement Python en fonction des paramètres du registre lorsque vous exécutez un programme en ligne de commande. Est-ce que cela se brisera si j'installe une version 2.x et 3.x de Python sur la même machine ?

Je veux jouer avec Python 3 tout en étant capable d'exécuter des scripts 2.x sur la même machine.

1 votes

Dans ma distribution, Fedora, Python 2.7 est installé à l'adresse suivante /usr/bin/python et Python 3.3 à /usr/bin/python3 . Donne également des noms différents pour Pip et IPython de Python3. Très pratique.

20 votes

@user - Dans l'esprit, je suis d'accord avec votre réponse, mais j'ai été brûlé par cet esprit tellement de fois que je comprends pourquoi quelqu'un demanderait avant de faire le saut.

0 votes

Les réponses semblent toutes porter sur la façon de choisir quel python exécuter et à quel moment. Mon problème était que l'installateur (3.6.2) ne voulait pas s'exécuter car il disait "Une autre version de ce produit est déjà installée." Il s'avère que j'avais déjà la version 3.6.3 installée.

3voto

Craig McQueen Points 13194

L'installation de Python associe normalement .py , .pyw y .pyc avec l'interpréteur Python. Ainsi, vous pouvez exécuter un script Python soit en le double-cliquant dans l'Explorateur, soit en tapant son nom dans une fenêtre de ligne de commande (donc pas besoin de taper python scriptname.py juste scriptname.py fera l'affaire).

Si vous souhaitez modifier manuellement cette association, vous pouvez éditer ces clés dans le registre de Windows :

HKEY_CLASSES_ROOT\Python.File\shell\open\command
HKEY_CLASSES_ROOT\Python.NoConFile\shell\open\command
HKEY_CLASSES_ROOT\Python.CompiledFile\shell\open\command

Lanceur Python

Des personnes ont travaillé sur un lanceur Python pour Windows : un programme léger associé à .py y .pyw qui rechercherait une ligne "shebang" (similaire à Linux et al) sur la première ligne, et lancerait Python 2.x ou 3.x selon le cas. Voir "Un lanceur de Python pour Windows" pour plus de détails.

2voto

rogerwamba Points 44

Voici comment faire fonctionner Python 2 et 3 sur la même machine

  1. installer Python 2.x
  2. installer Python 3.x
  3. Démarrer Powershell
  4. Type Python -2 pour lancer Python 2.x
  5. Type Python -3 pour lancer Python 2.x

Le site Python Launcher pour Windows est intégré à Python depuis la version 3.3, comme promis en 2011 lorsque le Stand alone a fait ses débuts :

Python Launcher pour Windows

2voto

Facile, après avoir installé les deux versions de python, ajoutez les chemins dans les variables d'environnement ; cf. environment variable settings . Ensuite, allez dans les dossiers python 2 et python 3 et renommez-les respectivement en python2 et python3 comme indiqué ci-dessous here for python2 y here for python3 . Maintenant dans cmd tapez python2 ou python3 pour utiliser votre version requise voir here .

1voto

Mandar Sadye Points 125

J'ai eu le même problème : je voulais utiliser python3 pour la plupart de mes travaux mais IDA pro exigeait python2. Voici donc ce que j'ai fait.

J'ai d'abord créé 3 variables dans la variable d'environnement de l'utilisateur comme suit :

  1. PYTHON_ACTIF : Il est initialement vide.
  2. HOME_PYTHON27 : A un chemin vers un dossier où Python 2 est installé. Par exemple, ";/scripts ;".
  3. HOME_PYTHON38 : Comme pour python 2, cette variable contient un chemin vers les dossiers de python 3.

Maintenant, j'ai ajouté

%PYTHON_ACTIF

à la variable PATH. Donc, en gros, cela veut dire que ce que contient ce "PYTHON_ACTIVE" est le python actif. Nous changeons programmatiquement le contenu de "PYTHON_ACTIVE" pour changer de version de python.

Voici l'exemple de script :

:: This batch file is used to switch between python 2 and 3.
@ECHO OFF

set /p choice= "Please enter '27' for python 2.7 , '38' for python 3.8 : "

IF %choice%==27 (
setx PYTHON_ACTIVE %HOME_PYTHON27%
)

IF %choice%==38 (
setx PYTHON_ACTIVE %HOME_PYTHON38%
)

PAUSE

Ce script prend la version de Python en entrée et copie en conséquence HOME_PYTHON27 ou HOME_PYTHON38 en PYTHON_ACTIVE. Il modifie ainsi la version globale de Python.

1voto

Brian Points 48423

Je pense qu'il y a une option pour configurer l'association de fichiers Windows pour les fichiers .py dans l'installateur. Décochez-la et tout devrait bien se passer.

Si ce n'est pas le cas, vous pouvez facilement réassocier les fichiers .py avec la version précédente. Le moyen le plus simple est de faire un clic droit sur un fichier .py, de sélectionner "ouvrir avec" / "choisir un programme". Dans la boîte de dialogue qui s'affiche, sélectionnez ou recherchez la version de python que vous souhaitez utiliser par défaut, et cochez la case "Toujours utiliser ce programme pour ouvrir ce type de fichier".

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X