将默认python更改为其他版本

2024-06-06 22:49:56 发布

您现在位置:Python中文网/ 问答频道 /正文

目前,当我使用“python”命令时,它指向python2.6。我已经安装了python3.1,我希望“python”命令指向python3.1。怎么可能?

mahmood@mpc:~$ which python 
/usr/bin/python
mahmood@mpc:~$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 9 2010-11-24 16:14 /usr/bin/python -> python2.6
mahmood@mpc:~$ uname -a
Linux orca 2.6.32-24-server #39-Ubuntu SMP Wed Jul 28 06:21:40 UTC 2010 x86_64 GNU/Linux

Tags: 命令whichbinserverubuntulinuxusrroot
3条回答

由于您有Linux,并且如果您只想键入“python”而不是“python3”来运行python程序,那么解决方案就是在shell配置文件(.bashrc等)中定义别名。对于伯恩贝壳,应该是

alias python=python3

(或者不管Python 3的名字是什么)。

这样,您就不必更改系统上的任何内容,所以这个解决方案应该是无害的,而且不应该破坏您的系统。

你真的不想改变python所指向的内容,因为有些程序可能期望Python 2,然后中断。

解决方案是使用virtualenv:创建一个独立的Python 3环境(使用-p python3选项),激活它,就可以了。

这是不可取的。

你可以用你自己的剧本(一首诗)写在最上面:

#!/usr/bin/env python3

如果您在Windows上,请安装^{}。它理解#!

在Linux上,要使脚本可执行,请运行一次:

$ chmod +x your-script

之后,要运行脚本:

$ ./your-script

为了交互使用,您可以创建@Petr Viktorin指出的virtualenv。要安装/升级(来自Ubuntu存储库的版本太旧):

$ pip install -U virtualenv{,wrapper}

按照/path/to/virtualenvwrapper.sh中的说明创建使用python3的virtualenv:

$ mkvirtualenv --python python3 py3

要激活virtualenv:

$ workon py3

在活动的虚拟机中,python指的是/path/virtualenv/bin/python。所以你可以跑:

$ python your_module.py

相关问题 更多 >