当前第2页 返回上一页
--config <名称> :配置 <名称>组中的可选项,并选择使用其中哪一个
--remove <名称> <路径> :从 <名称> 中去掉 <路径>选项
首先我们先看一下有没有关于Python的可选项:
1 | $ update-alternatives --display pythonupdate-alternatives: 错误: 无 python 的候选项
|
那首先先建立python的组,并添加Python2和Python3的可选项
1 2 | $ sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 2 # 添加Python2可选项,优先级为2
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.4 1 #添加Python3可选项,优先级为1
|
注意,这里的 /usr/bin/python 链接文件,两个可选项必须是一样的,这样这个链接文件才可以选择两个不同的可选项去链接。
这时如果我们查看 /usr/bin/python 这个文件时,会发现它已经链接到了 /etc/alternatives/python 。
1 | lrwxrwxrwx 1 root root 24 6月 19 18:39 python -> /etc/alternatives/python
|
然后我们再看一下版本
1 2 | $ python --version
Python 2.7.6
|
为什么还是Python2,看一下配置
1 2 3 4 5 6 7 8 | $ sudo update-alternatives --config python
有 2 个候选项可用于替换 python (提供 /usr/bin/python)。
选择 路径 优先级 状态
------------------------------------------------------------
* 0 /usr/bin/python2.7 2 自动模式
1 /usr/bin/python2.7 2 手动模式
2 /usr/bin/python3.4 1 手动模式
要维持当前值[*]请按回车键,或者键入选择的编号:
|
原来是因为默认选中了自动模式,而Python2的优先级高于Python3,这时候只要键入2,就可以使用Python3了。
如果你想要删除某个可选项的话:
1 | $ sudo update-alternatives --remove python /usr/bin/python2.7
|
update-alternatives只适用于Debian系Liunx。
4 virtualenvwrapper 切换版本
virtualenvwrapper是管理Python虚拟环境的工具,可以很方便的为不同的项目建立独立的环境,每个项目都可以安装自己的依赖,同时也支持在不同的虚拟环境中存在不同版本的Python。
首先安装virtualenvwrapper,可以选择apt安装或者pip安装
apt安装
1 | $ sudo apt-get install virtualenvwrapper
|
pip安装
1 | $ sudo pip install virtualenvwrapper
|
当你需要使用Python2开发项目时,建立一个Python2的虚拟环境:
1 | $ mkvirtualenv -p /usr/bin/python2 env27
|
当你需要Python3开发时:
1 | $ mkvirtualenv -p /usr/bin/python3.4 env34
|
然后可以随时切换不同的虚拟环境:
1 | $ workon env27 # 进入Python2环境$ workon env34 # 进入Python3环境
|
更爽的是,你可以在进入虚拟环境的同时切换到项目目录,只需要编辑 $VIRTUAL_ENV/bin/postactivate 这个文件即可:
1 | $ vim $VIRTUAL_ENV /bin/postactivate #前提是已经进入对应的虚拟环境
|
在文件中添加切换目录的命令:
5 总结
前面两种方法不推荐使用。
使用 update-alternatives 切换版本只适用于Debian系的Linux。
推荐使用 virtualenvwrapper 来管理虚拟环境和版本。
以上就是如何切换python2和python3的详细内容,更多文章请关注木庄网络博客!!
返回前面的内容
相关阅读 >>
Python为被装饰的函数保留元数据方法
Python如何使用绝对值
总结关于Python中的中文编码问题
Python之post登录实例代码
适合大学生读的Python书
Python函数之classmethod()
Python怎么调用自定义函数
Python中常用列表方法分享
通过cmd怎么进入Python
Python矩阵中常见运算的示例代码分享
更多相关阅读请进入《Python》频道 >>
人民邮电出版社
python入门书籍,非常畅销,超高好评,python官方公认好书。
转载请注明出处:木庄网络博客 » 如何切换python2和python3