python怎么切换linux目录,Linux下切换python2和python3

news/2024/8/26 7:35:28

为什么需要有两个版本的Python

Python2和Python3不兼容是每个接触过Python的开发者都知道的事,虽说Python3是未来,但是仍然有很多项目采用Python2开发。Linux的许多发行版本(如Ubuntu)都会自带Python2.7,但是当我们准备开发一个Python3项目的时候,我们该怎么办?

那就把Python3也下咯。嗯,Linux下确实是可以两个一起装的,但是问题是你怎么切换两个版本的Python。

0x01 修改别名

首先先来看一下我们的默认Python版本

$ python --version Python 2.7.6

1

2

然后我们修改一下别名

$ alias python='/usr/bin/python3'

$ python --version

1

2

Python 3.4.3 # 版本已经改变

/usr/bin/python3 这个路径是怎么找到的呢?

一般来说,软件的二进制文件都可以在 /usr/bin 或 /usr/local/bin (这个优先级高一点)找到。当然如果你是Debian系的Linux,可以这么找(前提是你已经安装了Python3):

$ dpkg -L python3

1

上面的别名修改只是暂时性的,重开一个窗口后配置就不见了。如果要使每个窗口都使用这个别名,可以编辑 ~/.bashrc (如果你是别的shell的话,就不是这个文件,如zsh是 ~/.zshrc ),把alias配置写入文件。

修改别名优点是足够简单,但是切换不灵活。

0x02 链接文件

在 /usr/bin 中建立一个链接文件指向Python3。

$ ln -s python /usr/bin/python3

$ python --version

Python 3.4.3

1

2

3

跟修改别名一样,也是修改不够灵活。

0x03 virtualenvwrapper 切换版本

virtualenvwrapper是管理Python虚拟环境的工具,可以很方便的为不同的项目建立独立的环境,每个项目都可以安装自己的依赖,同时也支持在不同的虚拟环境中存在不同版本的Python。

首先安装virtualenvwrapper,可以选择apt安装或者pip安装

apt安装

$ sudo apt-get install virtualenvwrapper

1

pip安装

$ sudo pip install virtualenvwrapper

1

当你需要使用Python2开发项目时,建立一个Python2的虚拟环境:

$ mkvirtualenv -p /usr/bin/python2 env27

1

当你需要Python3开发时:

$ mkvirtualenv -p /usr/bin/python3.4 env34

1

然后可以随时切换不同的虚拟环境:

$ workon env27 # 进入Python2环境

$ workon env34 # 进入Python3环境

1

2

更爽的是,你可以在进入虚拟环境的同时切换到项目目录,只需要编辑 $VIRTUAL_ENV/bin/postactivate 这个文件即可:

vimvimVIRTUAL_ENV/bin/postactivate #前提是已经进入对应的虚拟环境

在文件中添加切换目录的命令:

cd /path/to/your/project


http://www.niftyadmin.cn/n/2497449.html

相关文章

搭建heartbeat高可用

1:准备阶段两台服务器一主一从我这里采用了yum的方式进行安装,如想使用rpm安装,请自行下载rpm包安装epel拓展源国外的速度是在是太慢,我这里选择了阿里的拓展源,PS 感谢马云。[roottudou ~]# rm -rf /etc/yum.repos.d/* [roottu…

临时对象

临时对象(无法作为左值,即对象类型为const类型)产生的时期: 1. 以值的方式给函数传参; 2. 类型转换; 3. 函数返回一个对象时; 使用: string foo(); void bar(string& s); bar(foo());      //编译…

jquery 上下触屏滑动_jQuery简单实现上下,左右滑动的方法

本文实例讲述了jQuery简单实现上下,左右滑动的方法。分享给大家供大家参考,具体如下:渐变移动出足够的空白 -> 淡出最后一个 ->渐变移动出足够的空白我们要做的是向左移动效果.这个效果用时需添加一个DIV设置超出部分不显示,这样就可以用了.闲话不…

linux 允许用户ftp,在Unix或Linux上限制或允许某ftp用户登录

Unix 或Linux 是通过 配置文件 ftpusers 限制用户 ftp 连接服务器的。在该文件中的用户都不能通过ftp 登录服务器。每个被限制的用户名各占一行,该文件一般只能通过root用户维护。如果用户名包含在该文件中,那么这个用户使用ftp连接服务器时&#xff0c…

运行内存四个G能安装linux吗,Linux下Redis的安装和部署

一、Redis介绍Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统。和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多,包括string、list、set、zset和hash。这些数据类型都支持push/pop…

element 编辑 跳转页面_关于element ui 的路由跳转页面的问题

写的比较乱,方便以后自己来复制background-color"#545c64"text-color"#fff"active-text-color"#ffd04b"router>element ui 导航跳转页面:default-active"" 默认显示页面 select 点击导航的回调 router路由模…

linux 文件夹无法写入文件夹,Linux系统有空间但是无法写入文件

Linux系统iNode耗尽硬盘无法写入文件怎么办?df查看有空间提示设备上没有空间分析:在磁盘上建立文件的时候需要两个条件:1.磁盘空间,2.需要有inode 任何一个满了都回提示设备没有空间。可以使用df -ia查看磁盘详细信息。解决方法&…

VMware虚拟机非正常关闭后无法启动记录!

公司同事强制关机,导致VMware里面虚拟机无法启动,报错:虚拟机在使用,请获取所有权,获取之后仍然说不能使用。这篇博文记录一个VMWare虚拟机非正常关闭后无法启动的解决方案。我们中心的网站部署在一个Windows XP的虚拟…