la mise à niveau par défaut de la version de python ou d'installer une autre version de python sous Linux
Je veux mettre à jour python par défaut de la version que j'ai.e /usr/bin/python
dans Linux.
J'ai plusieurs versions de python installé comme
/usr/bin/python2.7
/usr/bin/python3.3
Cependant, python
commande renvoie toujours python2.7
# python
Python 2.7
Type "help", "copyright", "credits" or "license" for more information.
>>>
Maintenant, j'ai installé un module, qui s'est installé dans la version par défaut 2.7
.
C'est pourquoi je ne peux pas utiliser python3.3 script.py
, elle renvoie l'erreur de module manquant.
Comment mettre à jour cette version par défaut de 3.3
?
Est-il un moyen d'installer le module dans /usr/bin/python3.3
ainsi?
Ajouté: Module est pexpect-2.3
.
Quelle est la version de Linux que vous utilisez? La seule distribution que des liens symboliques python pour python3 est Arch autant que je sache.
Comment avez-vous installé le module?
"Pexpect a été écrit et testé avec Python 2.5. Il devrait fonctionner sur des versions antérieures qui ont pty module." me ferait penser il n'y a aucun moyen, il va courir sur Python 3.
pexpect-u ressemble à une fourche qui ne fonctionne pas sur python 3; ai pas essayé moi-même.
Comment avez-vous installé le module?
python3.3 setup.py install
devrait faire la bonne chose, si vous avez installé à partir des sources.python3.3 setup.py install
Il échoue avec des erreurs. Le Module est pexpect-2.3
."Pexpect a été écrit et testé avec Python 2.5. Il devrait fonctionner sur des versions antérieures qui ont pty module." me ferait penser il n'y a aucun moyen, il va courir sur Python 3.
pexpect-u ressemble à une fourche qui ne fonctionne pas sur python 3; ai pas essayé moi-même.
OriginalL'auteur | 2013-09-23
Vous devez vous connecter pour publier un commentaire.
L'installation de nouveaux
python
, s'installe par défaut dans/usr/local/bin
.L'ajout de cette voie de CHEMIN avant d'précédente par défaut de python chemin, résout le problème.
Cette façon vieux python n'est pas sali et le nouveau est installé.
Aussi, Si il y a déjà un
python
présents dans/usr/local/bin
, changement de lien symbolique de/usr/local/bin/python
à nouveau/usr/local/bin/python3.3
résout le problème. (Python installer, en général, seulement crée un lien quand il s'installe dans /usr/local/bin. Vous pouvez fairels
sur /usr/local/bin/python pour vérifier qu'il est en lien. Parce que python est installé sous /usr/local/bin/python2.7 et un lien vers celle-ci est créée en tant que ci-dessous)Bien sûr, le chemin de ce qui devrait être ajouté à CHEMIN comme déjà mentionné ci-dessus.
C'est toujours mieux de ne jamais toucher et le désordre avec
/usr/bin/python
version, moins il y a de fortes raisons, parce que /usr/bin/python est généralement pas un lien et est requis par de nombreux modules du système d'exploitation.OriginalL'auteur
Accepté la réponse est bonne, bien que, cependant, j'ai trouvé un autre hack astuce pour ce problème et je pense que c'est assez simple.
À l'emplacement de
/usr/bin/
il y a beaucoup de python liés à des fichiers disponibles. Vous pouvez voir le fichierpython
est en fait un lien pointant sur lepython2
(ce qui est soulignépython2.7
).Donc, chaque fois que vous commande python il appelle la
python2.7
paspython3.5
La solution est de supprimer l'original
python
lien et faire un autre lien qui pointe verspython3.5
et mettre le nouveau lien nom du fichier àpython
.Et vous avez terminé. 😀
python
exécutable: certains programmes ne sont pas encore python3 prêt. Alors que (par exemple) Ubuntu est de mettre un labeur se déplaçant vers python3, il a encore de mettre à jour tout à fait certains de ses composants qui signifie que ce que vous décrivez actuellement en pause beaucoup de votre système. Espérons que dans un ou deux ans, les distributions majeures vont se déplacer vers python3 seulement, mais jusqu'alors, je ne pense pas que ce soit une bonne idée. Il suffit de spécifierpython3
lors du lancement de vos programmes!OriginalL'auteur Shiba Prasad J.