如何在pycharm中使用virtualenv

最近在用python做一个文本的情感分析的项目,用到tensorflow,需要用python3的版本,之前因为《机器学习实战》那本书的缘故,用的是python2.7.所以目前的情况是要两个版本共存,之前看到身边有人为了解决这个问题,居然装了两款软件,pycharm用来做python2.7的开发,另一款用来做python3.6的开发,估计一定是不知道python的虚拟环境工具virtualenv.本文就来讲述一下这个工具是怎么用的,同时也讲一下,如何在pycharm中使用virtualenv.
1. virtualenv的安装
virtualenv的安装和其它python上的软件安装一样,有两种方法,pip 和setup方法安装。
值得注意的是,我们说virutalenv的安装是为了解决多版本python共存的问题,暗含了,你的至少有一个python版本是已经存在,并且可以正常工作的。
我这里的主环境是python2.7
1.1 pip安装virtualenv
pip install virtualenv
当然了,卸载就是:pip uninstall virtualenv.
如果pip没有安装的话,可以看下面的第二种安装virtualenv的方法,顺带将pip也安装了。
1.2 源码安装virtualenv
在virtualenv的官网下载最新的tar.gz包:https://pypi.python.org/pypi/virtualenv/15.1.0#downloads
将tar.gz包解压后,目录切换到virutualenv的目录下,然后在执行一下命令:
c:virtualenv-15.1.0>python setup.py install
如果pip没有安装,就按照上面方法,下载最新pip的tar.gz包安装即可。
2. 用virtualenv配置python虚拟环境
说到用virtualenv配置python的虚拟环境,其实就是将某个特定项目(或者说目录下)配置成某个python版本。
如下:
现在要将c:pythonprojsjtu-cs 这个项目(我认为说成目录更准确些)配置成python3.6的版本,因为这个目录下全部是python3.5的东西,用python2.7去运行显然是有问题的。也就是说要用virtualenv去创建python3.6.1的虚拟环境。值得一提的是,虚拟什么版本的python,一定是这个python提前已经装好了。
首先:准备对哪个目录进行虚拟,就先进入到这个目录下(这里是c:pythonprojsjtu-cs),然后运行命令:
virtualenv -p c:python36python.exe higenv
说明: -p就是python的版本(需要带上路径,这是因为在我们的环境变量里只有python2.7) higenv就是虚拟的环境变量。
如果不知道virtual,可以执行下面的命令进行查看:
上面都解释的很清楚,这里不再赘述。
我们看一下现在我们配置的是否生效了:
显然没有生效,因为需要激活。
3. 激活虚拟环境变量
c:pythonprojsjtu-cs>cd higenv/scriptsc:pythonprojsjtu-cshigenvscripts>activate
验证一下:
>>> python hello ,world
python3和python2最明显的一个区别就是print由打印语句变成函数了。
退出激活环境用下面的命令:
(higenv) c:pythonprojsjtu-cshigenvscripts>deactivate
值得注意的是,退出终端,重新进来的时候,如果没有激活,我们配置的虚拟环境是不会生效的,linux就不一样了,一直生效,不用每次都激活,目前还在研究中。
4. 在pycharm中使用virtualenv
pycharm开发工具是我目前见过最好的python开发工具,非常强大,本身已经集成了virtualenv工具,所以我们如果用它做开发,根本无需手工安装virtualenv,
不过话又说回来,在windows下的virtualenv使用方法和linux大同小异,会了windows,linux一通百通。
4.1 新建项目,自由选择python版本
当导入已有项目时,pychar会自动选择相匹配的python版本,当然你也可以选,方法在后面。另外python2和python3分别向下兼容,你不会除了这两个版本还有其余版本吧。
4.2. 在pycharm中创建virtualenv的虚拟环境:
当然了,你也可以不用创建环境变量,直接选择你需要的就可以了:
打开你需要选择python版本的项目,然后直接选择需要的project interpreter.
ok!

ChatGPT会抢走好莱坞编剧饭碗吗?
AR技术加持 京东开启“狂热爱 趣京东”主题促销节
高通4.5亿元重金投资RISC-V 预示着一种趋势正在悄然改变
VARON IP的生成、连接、嵌入
ARC-16F/J-C-L功率因素自动补偿控制器概述
如何在pycharm中使用virtualenv
网线水晶头接法实操步骤
欧盟RoHS认证指令指南
艾睿电子推出集成双向电力转换器解决方案,推动电动汽车到电网技术发展
汽车胎压监测(TPMS)系统为何用蓝牙?
下一代苹果耳机AirPods 3外形、功能揭晓
中国企业携5G和人工智能的最新技术和产品亮相2019 IFA展会
如何用手机清除路由器垃圾和更换路由器密码
新型充电桩设计提供了更可靠、方便、舒适的使用体验
华为P10闪存门风波不断 余承东微博发声:反思华为P10内存门事件
什么是循环依赖?
量子计算机来了,如何才能阻挡量子计算机的攻击
苹果的十年,iPhone8将有这几点改变
面对“没有武德”的特斯拉 其它车企该怎么办
嫌泄露三星、LG的AMOLED核心技术而被起诉的职员最终被判无罪