Python2.7 ne fonctionne pas en 18.04, python3 est installé


10

J'ai installé Ubuntu 18.04 dans une boîte virtuelle et lorsque vous essayez python -v, il est dit que vous avez installé python3, je veux supprimer python 3 ou le désactiver pour pouvoir utiliser python2.7 et exécuter certains scripts que j'ai.


@karel: merci pour l'info. J'ai vérifié à nouveau avec un système en direct et j'ai constaté qu'il n'est pas non plus installé en 18.10.
Takkat

@karel Merci. Le vote serré a été retiré et les commentaires précédents ont été supprimés :) +1 pour votre réponse également :)
WinEunuuchs2Unix

4
Pour info: Python 2 perdra sa prise en charge en amont dans un peu plus d'un an , vous devez donc prévoir de bifurquer Python ou de migrer vers Python 3 bientôt.
Kevin

@Rahul Utilisez python2ou python3au lieu de juste python, car dans certains systèmes (Arch par exemple) pythonsans version exécute Python 3 par défaut (je pense qu'Ubuntu fera de même à un moment donné). En accord avec Kevin, vous devriez migrer vers 3.x (fin 2018, il n'y a que quelques bibliothèques 2.x uniquement)
trolley813

La partie amusante ici est que certains ubuntu 18.04 plus anciens ont toujours python lié symboliquement à python2.7 (après l'avoir installé) mais maintenant ubuntu 18.04.02 ne crée pas ce lien symbolique. Cela semble juste bizarre quand vous réalisez que 18.04 est LTS ...
Ikar Pohorský

Réponses:


19

Python 2 n'est plus installé par défaut dans les nouvelles installations d'Ubuntu 18.04 et versions ultérieures. Ne supprimez pas python3 d'Ubuntu 18.04 et versions ultérieures, sinon le logiciel Ubuntu, le terminal et de nombreuses autres applications installées par défaut cesseront de fonctionner. Si vous avez supprimé Python 3 et que maintenant le logiciel Ubuntu, le terminal et les autres applications ne fonctionnent pas, suivez les instructions de cette réponse pour le réinstaller et faire fonctionner à nouveau toutes les applications.

Pour installer Python 2.7 dans Ubuntu 18.04 et versions ultérieures, ouvrez le terminal et tapez:

sudo apt install python2.7  

Pour démarrer l'interpréteur Python 2.7, exécutez cette commande:

python2.7

Pour démarrer l'interpréteur Python 3, exécutez cette commande:

python3  

Dans les deux cas, l'interpréteur Python affichera un message de version au démarrage, indiquant la version de Python que vous exécutez.


7

Dans Ubuntu 18.04 LTS, Python 2.7 et Python 3 sont installés par défaut:

entrez la description de l'image ici
Capture d'écran d'une session en direct

En 18.10. et en 19.04 il ne sera pas installé dans une session live:

entrez la description de l'image ici

Vous devrez installer Python 2.7 manuellement avant de pouvoir l'utiliser.

sudo apt install python

Les applications qui en dépendent l'installent en tant que dépendance.


5

1) Pour installer la version Python 2 sur Ubuntu 18.04, ouvrez le terminal et entrez:

sudo apt install python-minimal

ou

sudo apt install python2.7

Vérifier la version:

python --version


2) Si la liste mise à jour de python 3+ d'alternatives Python pour effectuer un basculement entre n'importe quelle version de python doit être exécutée:

update-alternatives --config python

Exemple:

There are 2 choices for the alternative python (providing /usr/bin/python).

  Selection    Path                Priority   Status
------------------------------------------------------------
* 0            /usr/bin/python3.5   2         auto mode
  1            /usr/bin/python2.7   1         manual mode
  2            /usr/bin/python3.5   2         manual mode

Press <enter> to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/bin/python2.7 to provide /usr/bin/python (python) in manual mode

et sélectionnez une version appropriée en utilisant un entier de sélection comme indiqué ci-dessus.


3) Si vous voyez: update-alternatives: erreur: pas d'alternatives pour python . Courir:

ls /usr/bin/python*

Exemple de sortie:

/usr/bin/python  /usr/bin/python2  /usr/bin/python2.7  /usr/bin/python3  /usr/bin/python3.5

Ensuite, mettez à jour la liste des alternatives Python pour chaque version que vous souhaitez utiliser avec les priorités 1 et 2:

update-alternatives --install /usr/bin/python python /usr/bin/python3.5 1
update-alternatives --install /usr/bin/python python /usr/bin/python2.7 2

Ensuite, exécutez à nouveau update-alternatives --config pythonet sélectionnez une version appropriée.


Pourriez-vous s'il vous plaît clarifier ce que font exactement les deux dernières commandes ici, Une autre question est que j'ai changé dans mon script de #! / Usr / bin / python en #! / Usr / bin / python2.7. Est-il possible de changer le chemin env pour python2.7 en / usr / bin / python
Rahul

@Rahul Lorsque vous utilisez pythonune commande sur le terminal, les alternatives / alias sont pris en compte. Mais dans les scripts, vous êtes le chemin absolu de python, vous devez donc utiliser le chemin de la version python que vous souhaitez utiliser.
Kulfy

@Rahul, désolé réparé. Dans ces commandes, vous définissez la priorité dans les derniers paramètres numériques (2 et 1).
mature

Je ne peux pas assez voter pour votre réponse. Légende!
Kris Bonev

3

Vous n'avez pas besoin de supprimer ou de désactiver python3votre Ubuntu.

Si vous avez juste besoin de python pour exécuter de petits scripts, vous pouvez simplement installer Python 2 comme réponse de @ karel.

Si vous commencez à apprendre Python, je vous suggère d'utiliser un environnement virtuel ou conda


oui, je l'ai maintenant, installé python2.7 et vérifié où est python2.7 et créé un script en utilisant cet env. Merci
Rahul

Habituellement, je n'installe pas le package depuis conda, j'installe le package par pip. J'utilise juste condapour créer un env virtuel d'accès global.
thangdc94

2

Pas besoin de désactiver python 3. Vous pouvez exécuter python 2.7 à l'aide de la commande python2 filename.py. Vous pouvez vérifier la version de python 2 par python2 --version

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.