关于virtualenv是什么我想我不用介绍的吧。用python做开发的人要是不会用virtualenv,总有一天会被各种环境恶心死。那么我今天就来讲一讲使用virtualenv的正确姿势。

virtualenv可以到https://pypi.python.org/pypi/virtualenv 去下载。下载之后解压,然后我的做法是用cp拷贝到/usr/local目录下去,拷贝两个,分别命名为virtualenv2和virtualenv3,并

sudo vim /usr/local/virtualenv3/virtualenv.py

把第一行最后加上一个3,把python改成python3

# 注:
# 不会用vim的看这一段,会用的略过:
# 在vim中按i,看到下方出现INSERT字样,
# 然后把光标移到这一行的末尾,加上个3,然后按ESC,看到下面INSERT字样消失了,然后敲:wq,注意有个冒号啊!
# 这几个字符会出现在屏幕左下角,好了,按回车,就保存退出了。
# 如果不小心改错了,表慌,也是按ESC,然后按:q!,注意是冒号,小写Q和感叹号,
# 再回车,就是不保存退出。

接下来做两个软连接:

$ sudo ln -s /usr/local/virtualenv2/virtualenv.py /usr/sbin/virtualenv2
$ sudo ln -s /usr/local/virtualenv3/virtualenv.py /usr/sbin/virtualenv3

好了,这下python2和3的virtualenv都做好了,可以直接用了。我最近要使用python3的环境,所以虚拟环境也只用python3了。

为了做实验,我们使用了一个test目录

建立目录
mkdir test
cd进入test目录,之后,
 
Linux:
virtualenv3 env
 
这时候再ls,可以看到目录下多了一个env目录。这就是当前的虚拟环境。当然也可以起别的名字。在env/bin目录下可以看到虚拟环境使用的python环境。
 
Windows:
命令同样是
python virtualenv_path\virtualenv.py env
但是使用dir看env目录下除了bin和lib,还有一个Scripts目录。这里的virtualenv_path指的是virtualenv的绝对路径。也可以把virtualenv写进环境变量中。
进入虚拟环境。
 
Linux:
在test目录下,使用
source env/bin/activate
 
Windows:
在test目录下,使用
env\Scripts\activate
之后会看到用户前面多了个(env),表示现在已经在虚拟环境中了。
 
如果用完了想退出,只需要使用
deactivate
退出虚拟环境。windows和linux通用。但是,为了您的身体健康,我建议您使用Linux。
 
如果不想要这个环境了,直接把env目录删除就好了。
 

使用virtualenv的正确姿势的更多相关文章

  1. 判断是否为gif/png图片的正确姿势

    判断是否为gif/png图片的正确姿势 1.在能取到图片后缀的前提下 1 2 3 4 5 6 7 8 9 //假设这是一个网络获取的URL NSString *path = @"http:/ ...

  2. 在Linux(ubuntu server)上面安装NodeJS的正确姿势

    上一篇文章,我介绍了 在Windows中安装NodeJS的正确姿势,这一篇,我们继续来看一下在Linux上面安装和配置NodeJS. 为了保持一致,这里也列举三个方法 第一个方法:通过官网下载安装 h ...

  3. 程序员取悦女朋友的正确姿势---Tips(iOS美容篇)

    前言 女孩子都喜欢用美图工具进行图片美容,近来无事时,特意为某人写了个自定义图片滤镜生成器,安装到手机即可完成自定义滤镜渲染照片.app独一无二,虽简亦繁. JH定律:魔镜:最漂亮的女人是你老婆魔镜: ...

  4. ios监听ScrollView/TableView滚动的正确姿势

    主要介绍 监测tableView垂直滚动的舒畅姿势 监测scrollView/collectionView横向滚动的正确姿势 1.监测tableView垂直滚动的舒畅姿势 通常我们用KVO或者在scr ...

  5. 玩转 Ceph 的正确姿势

    玩转 Ceph 的正确姿势 本文先介绍 Ceph, 然后会聊到一些正确使用 Ceph 的姿势:在集群规模小的时候,Ceph 怎么玩都没问题:但集群大了(到PB级别),这些准则可是保证集群健康运行的不二 ...

  6. 解锁redis锁的正确姿势

    解锁redis锁的正确姿势 redis是php的好朋友,在php写业务过程中,有时候会使用到锁的概念,同时只能有一个人可以操作某个行为.这个时候我们就要用到锁.锁的方式有好几种,php不能在内存中用锁 ...

  7. jquery选中radio或checkbox的正确姿势

    jquery选中radio或checkbox的正确姿势 Intro 前几天突然遇到一个问题,没有任何征兆的..,jquery 选中radio button单选框时,一直没有办法选中,后来查了许多资料, ...

  8. 程序员节应该写博客之.NET下使用HTTP请求的正确姿势

    程序员节应该写博客之.NET下使用HTTP请求的正确姿势 一.前言 去年9月份的时候我看到过外国朋友关于.NET Framework下HttpClient缺陷的分析后对HttpClient有了一定的了 ...

  9. 使用 win10 的正确姿势

    17年9月初,写了第一篇<使用 win10 的正确姿势>,而现在半年多过去,觉得文章得更新一些了,索性直接来个第二版吧. -----2018.3.24 写 一. 重新定义桌面 我的桌面: ...

随机推荐

  1. EF 连接到 Azure-SQL

    using Autofac; using Autofac.Integration.Mvc; using System; using System.Collections.Generic; using ...

  2. 关于Map集合的遍历总结

    Map集合的遍历经常遇到,今天在这里总结一下Map集合遍历的几种方式: public static void main(String[] args){ Map<String,String> ...

  3. js 常用脚本

    1.判断电话号码和手机号码 var tel = $("#tel").val(); if (isNotBlank($.trim(tel))) { //不为空的情况下判断符合手机号码标 ...

  4. WPF binding<一> Data Binding在WPF中的地位

    在代码中看到 <Image Source="{Binding ElementName=LBoxImages, Path=SelectedItem.Source}" /> ...

  5. 二:Nexus知识

    Nexus访问 Http://localhost:8080/nexus Nexus登陆 用户:admin 密码:admin123 Nexus仓库 nexus的仓库类型分为以下四种: group: 仓库 ...

  6. java实现Redis分布式锁

    网上到处都是分布式锁的代码,基本都是通过setNX 和 expire 这两个不是原子操作,肯定会有问题,不乏好多人通过用setNX的value当做过期时间来弥补等等.但是好像都不太好,或者多少有点问题 ...

  7. php获取今日开始时间和结束时间

    $begintime=date("Y-m-d H:i:s",mktime(0,0,0,date('m'),date('d'),date('Y'))); $endtime=date( ...

  8. csharp:DropDownComboxTreeView

    using System; using System.Collections.Generic; using System.Text; using System.Drawing; using Syste ...

  9. FFT板子

    woc......FFT这玩意儿真坑...... 一上午除了打了几遍板子什么也没干......真是废了...... 你要加油啊...... #include<cstdio> #includ ...

  10. Java数字和字符串的相互转换(BigDecimal的使用)

    String s = "100."; double d1 = "1.23"; double d = Double.parseDouble(s); s = Str ...