python不同版本可以共存吗_解决方案-01、python版本共存_许瀚文的博客-程序员秘密

技术标签: python不同版本可以共存吗  

1.为什么需要版本共存?

首先python版本共存指的是不同版本的python解释器,同时存在在同一个独立的系统中。

例如:我们在进行项目开发时有时需要用到python2,有时要用到python3。但是在我们

执行.py文件时在命令窗口键入 python test.py 时,到底系统会给我用python2

执行还是python3执行呢?那我们有时候需要用指定的python版本该怎么办呢? 以及

我如何用指定的pip? 这些都将是大问题。小编我最近也遇到了类似的问题,弄了很久

查了很多资料,最后用虚拟环境完美地解决了这些问题。

2.如何建虚拟环境

首先 进入terminal(win下指命令行)界面 输入python

会进入python shell模式

7fdfbe95528c43ab42f5d7d503b05aad.png

在这里我们就能看到系统默认的python解释器版本了

然后输入quit() 退出python3 shell

(python2 shell 的退出方法为Ctrl+C)

建议先卸载其中一个python版本(python3 用安装程序卸载 python2用卸载程序卸载)

不过不卸载应该也不会出现问题 只不过我没试过 不能保证没问题

如果你的默认python没有安装pip那就先安装pip

pip安装包下载地址

下载下来后解压 进入terminal界面切换到pip的文件夹

执行python setup.py install

更新pip

pip -m pip install --upgrade pip

如果pip更新失败

就再重新安装pip 继续更新

安装virtualenvwrapper-win

注:如果是linux系统 比如ubuntu等 不需要加-win

pip install virtualenvwrapper-win

安装成功后

新建虚拟环境

mkvirtualenv -p C:\python35\python.exe py3env

# C:\python35\python.exe是我的python3的路径

mkvirtualenv -p C:\python27\python.exe --system-site-packages py2env

# C:\python27\python.exe是我的python3的路径 --system-site-packages参数是导入python2中已安装的包 不加这个参数 默认不导入

然后我们就能通过在terminal中输入 workon py3env来进入python3的虚拟环境

c9f6f0aa3403b9ccff39dc3e1f916cbe.png

输入workon py2env来进入python2的虚拟环境

3.virtualenvwrapper的其他命令

workon env_name

#进入虚拟环境或者切换虚拟环境

deactivate

#离开虚拟环境

workon 或 lsvirtualenv

#列出虚拟环境列表

rmvirtual env_name

#删除虚拟环境

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_32867521/article/details/113968124

智能推荐

C进阶- 04自定义类型:结构体、枚举、联合_.阿Q.的博客-程序员秘密

1.求下面程序段的时间复杂度 x = 91; y = 100; while (y > 0) if (x > 100) { x = x - 10; y--; } else x++;​1.求下面程序段的时间复杂度 x = 91; y = 100; while (y > 0) { if (x > 100...

解决ImportError: cannot import name ‘imread‘ from ‘scipy.misc‘_cannot import name 'trend_test' from 'scipy.stats_咩咩咩33的博客-程序员秘密

解决ImportError: cannot import name ‘imread’ from 'scipy.misc’在调试faster-rcnn.pytorch1.6代码时遇到问题解决ImportError: cannot import name ‘imread’ from ‘scipy.misc’解决方法:将from scipy.misc import imread换成from imageio import imread学习记录使用,如有侵权请联系删除,谢谢!!...

企业架构与SOA_企业架构和soa_peachpi的博客-程序员秘密

也经常写架构设计文档,但是以前都是采用的野路子,参考别人的经验,然后自己摸索出一些规律,没有怎么正儿八经去遵循某个理论体系。理论来源有两个:一本薄薄的英文原版书,书名好像就是软件架构;另外就是RUP了。我记得2000年前,还不怎么提什么架构设计,到了2000年以后,这个概念慢慢开始火起来。最近,在同时给业务部门和技术部门写解决方案和架构文档,又重新产生了一些疑问,正巧接触到一些企业架构理论方面的知识,觉得跟自己以前的实践还是有一些印证的。正好也学习学习:了解企业架构,可以从下面这篇经典的文章入手,里面将四种

Visual Studio Code 配置 Python_没有下载python可以下visual studio code_HoneyMoose的博客-程序员秘密

Visual Studio Code 是一个免费的开发工具,比较轻量,很多人都会用。如果你还没有安装 Python 扩展的话,在第一次使用 Visual Studio Code 导入 Python 项目,将会提示你安装 Python 扩展。安装扩展在 VSC 的右下角,将会提示你安装 Python 扩展。单击 install 进行安装即可。下面的图显示扩展正在进行安装。如果还需要其他一些扩展需要进行安装的话,按照提示进行安装即可。有可能能够在控制台...

Android 退出终止APP的方法总结_BridgeGeorge的博客-程序员秘密

1. Dalvik VM的本地方法System.exit(0); //常规Java、c#的标准退出法,返回值为0代表正常退出2. 任务管理器方法首先要说明该方法运行在Android 1.5 API Level为3以上才可以,同时需要权限ActivityManager am = (ActivityManager)getSystemService (Context.ACTIVI

随便推点

1、二叉树先序,中序,后序遍历的递归和非递归方法(JS实现)。_abuanden的博客-程序员秘密

查找某个节点的路径的方法通常有两种,一种是递归算法,另一种是非递归算法定义树节点class TreeNode{ constructor(value){ this.value = value; this.left = null; this.right = null; }}构建树// 构建树let root = new TreeNode(1);root.left = new TreeNode(2);root.right = n.

c语言输出名人名言大全摘抄,送给程序员的励志名言精选_大狗之家的博客-程序员秘密

送给程序员的励志名言精选1、信念和目标,必须永远洋溢在程序员内心。2、IF(BOOL 学习= =FALSE)BOOL 落后=TRUE;不断的学习,我们才能不断的前进。3、编程中我们会遇到多少挫折?表放弃,沙漠尽头必是绿洲。4、如果调试一个程序让你很苦恼,千万不要放弃,成功永远在拐角之后,除非你走到拐角。5、作为一个真正的程序员,首先应该尊重编程,热爱你所写下的程序,他是你的伙伴,而不是工具。6、程...

RTX30系列-Ubuntu系统配置与深度学习环境Pytorch配置_3090在ubuntu下装pytorch_resumebb的博客-程序员秘密

本文完成RTX3090Windows+Ubuntu双系统配置 ,并配置深度学习环境硬件环境为RTX3090+Z590主板,64GB RAM,2TB固态,8TB存储Ubuntu系统版本为:Ubuntu 20.04.3 LTS深度学习环境:cuda11.0.4;cudnn8.2.4;pytorch1.9

jdk——泛型介绍_jdk 泛型_想要变瘦的胖子的博客-程序员秘密

本质是参数化类型可以用在类,接口,方法的创建中 类——泛型类.note public class GenericCla<T,P> { public T method1(T t){ return t; } public P method2(P p){ return p; } public <P> P method3(){ return null; }} 接口——泛

hive面试题及解题思路_Jenrey的博客-程序员秘密

第一题:现有这么一批数据,现要求出: 每个用户截止到每月为止的最大单月访问次数和累计到该月的总访问次数 三个字段的意思: 用户名,月份,访问次数 A,2015-01,5 A,2015-01,15 B,2015-01,5 A,2015-01,8 B,2015-01,25 A,2015-01,5 A,2015-02,4 A,2015-02,6 ...

CentOS6.9用rpm安装MySQL5.7_歪范儿的博客-程序员秘密

CentOS6.9用rpm安装MySQL5.7不多说,直接上代码(命令行)。 MySQL的版本自己在repo.mysql.com找。http://repo.mysql.com/mysql57-community-release-el6-11.noarch.rpmwhereis mysqlyum remove mysql-libsyyum clean dbcachewget http://rep

推荐文章

热门文章

相关标签