web-dev-qa-db-fra.com

Modification de Python par défaut dans 12.04 LTS

J'ai téléchargé et installé python 3.2.3 pour Ubuntu/Debian. Également IDLE IDE pour 3.2.3.

Si j'exécute explicitement IDLE pour 3.2.3, 3.2.3 s'exécute sous IDLE et tout va bien.

Mais si je vais dans une session de terminal et que je lance simplement Python, la valeur par défaut est python 2.7.3. De plus, mon Python commercial IDE (Wingware) est défini par défaut sur Python 2.7.3.

Comment puis-je changer mon global Python par défaut à 3.2.3 au lieu de 2.7.3?

5
Vector

Ne le fais pas

Étant donné que de nombreux programmes importants sont écrits en python, le fait de modifier le comportement par défaut de python peut provoquer le blocage de votre système. Par conséquent, définissez python pour des applications individuelles. Vous pouvez localiser python3 dans /usr/bin/python3Si vous voulez python3 par défaut, essayez Ubuntu 12.10

8
Tachyons

Je ne recommanderais pas de remplacer le système python binaires.

J'utilise principalement Perl et Perlbrew pour tester le code et les nouvelles versions de Perl.

Vous voudrez peut-être essayer quelque chose comme Pythonbrew qui vous permettra de maintenir votre système Python tout en vous fournissant un bac à sable pour jouer avec votre nouvelle distribution.

2
Kevin Bowen

J'ai eu un problème où quelqu'un a changé ma valeur par défaut python de 2.x à 3.x et qui s'est cassé tout. Donc, si quelqu'un a le même problème que moi (et que oui, blah blah le fait à vos risques et périls), vous devez procéder comme suit:

  1. Assurez-vous que /usr/bin/python est un lien: ls -l /usr/bin/python devrait vous donner à la fin /usr/bin/python -> /usr/bin/python3

  2. Sudo rm /usr/bin/python supprime le lien

  3. Enfin, créez un nouveau lien en faisant Sudo ln -s /usr/bin/python2 /usr/bin/python

ATTENTION

Ne faites pas cela si tout fonctionne bien! Je continuais à avoir des erreurs de syntaxe car python3 devait avoir des fonctions print () avec des crochets, et mon système de fichiers était fait avec python2. Cela l'a corrigé.

0
Sergey