Python - Virtualenv 创建虚拟环境
Virtualenv
为了解决各个项目的共同依赖同一个环境,造成版本冲突等,virtualenv创建一个干净的环境,在这个环境下,进行Python项目的开发等,就成为一个个独立的项目,从而避免一系列麻烦,提升开发效率。
下面介绍在centos和Windows环境如何创建虚拟换。
Centos下创建虚拟环境

1. 下载virtualenv
pip install virtualenv
pip install virtualenvwrapper # 备用
2. 创建虚拟环境
virtualenv 虚拟环境名 # 这里我创建了虚拟环境名为venv1
# 注意,这一步可能会提示:
bash: virtualenv: 未找到命令...
或者
bash: virtualenv: command not found...
那么说明你virtualenv的软连默认没有搞上...心塞!我怀疑(不可靠)是自定义安装Python解释器导致的
解决办法是建立软连:
首先找到你的Python解释器安装目录:如果你知道更好,不知道的话,whereis python
应该能确定在/usr/local/python下,或者别的,比如我的就在/usr/local/python/python35,python35为我自己定义的Python安装目录,那么:
ln -s /usr/local/python/python35/bin/virtualenv /usr/bin/virtualenv # 将解释器的bin下pip安装好的virtualenv软连到系统的bin里面
接下来就应该能直接:
virtualenv 虚拟环境名
# 咳咳,如果你嫌上面建软连麻烦,那么还有一招...
python -m virtualenv 虚拟环境名 # 这么着你每次创建虚拟环境都要这么搞
3. 当创建虚拟环境之后。激活虚拟环境,执行虚拟环境下的bin目录里的activate文件:
# 此时你在虚拟环境目录外面,没有cd进去...那就执行
source venv1/bin/activate # 激活成功则显示:(venv1) [root@bogon tmp]#
# 退出虚拟环境则执行:deactivate # 这个倒是没有目录限制
4. 这就搞好了,当你你激活虚拟环境,就可以把你的项目搞到服务器,然后在这个虚拟环境里搞风搞雨,不足与外人道也。。。。

Windows下cmd命令行模式
下载与安装

1、下载 virtualenv
pip3 install virtualenv
# 下面直接在cmd里建立文件夹,这个无所谓,从本地建一样
mkdir myproject
cd myproject
2、创建虚拟环境
virtualenv --no-site-packages projectname # 如:virtualenv --no-site-packages myProject # 注意,下面是指定用哪个解释器来创建虚拟环境,适合于双解释器共存的情况下,不写优先使用默认的python环境
# virtualenv --python=python2.exe --no-site-packages projectname
注意:no-site 表示不安装package等依赖,表示只安装纯净的Python环境
3、激活虚拟环境 cmd命令行下:cd到 myProject目录下
Scripts\activate # 这个激活虚拟环境,根据系统不一样,激活命令也不一样,到这一步有问题的话,Google吧
# .\Scripts\activate # 备用的激活虚拟环境目录,从当前目录开始找Scripts
这时命令行会出现前缀为(myProject) 的标志,表示此时已进入虚拟环境 # myProject:创建的虚拟环境名称
此时,就可以在这里进行Python项目的创建,安装的一些依赖或第三方模块,也不会跟原来的环境有冲突 4、退出虚拟环境 deactivate # 命令行创建django项目
5、在进入到虚拟环境之后,我们下载django
pip3 install django
# 注意,如果是python2的执行上面的命令,那么会默认安装最新版的django版本,在我测试的时候,是django2.0,python2 pip 的时候,报错
# 解决办法是指定安装版本
# pip install django==1.8.17
6、创建django项目
django-admin startproject firstProject
7、cd 到firstProject,启动django项目
python manage.py runserver 8888 # 8888:设置端口
# create app
# python manage.py startapp app01
8、打开浏览器测试
http://127.0.0.1:8888/

Pycharm下创建虚拟环境,有版本坑,往下有解决方式
第一步:file-->settins-->project interpreter-->create virtualenv
第二步:根据提示创建,名称,路径,解释器,是否选择使用site-packages等

那么,如何添加本地已有的虚拟环境呢? # 添加本地虚拟环境下的解释器
第一步:file-->settins-->project interpreter-->add local

第二步,找到本地虚拟环境下的scripts文件夹下的python.exe

如果选择解释器来运行当下的程序呢? # 选择使用哪个解释器来运行程序,上面添加的解释器都在这里,可以根据需要选择

注意:以上适用于Pycharm2017.2.X,我测试的时候是2.4,当我更新到Pycharm2017.3时,关于虚拟环境的操作有变啦,创建和打开本地虚拟环境都集中到了Add Local,所以,再见不到create virtualenv,不要像我一样着急啦
创建新的虚拟环境

打开本地的虚拟环境

官网:https://virtualenv.pypa.io/en/stable/
指定版本创建虚拟环境摘自:http://www.jb51.net/article/85527.htm
指定django下载版本摘自:http://blog.csdn.net/qq_25730711/article/details/54314990
Python - Virtualenv 创建虚拟环境的更多相关文章
- python中创建虚拟环境
# virtualenv 虚拟环境安装 pip install virtualenv # 创建虚拟环境 virtualenv [虚拟环境名称] # 进入虚拟环境 windows : 进入 ...
- python 3 创建虚拟环境(Win10)
python 3 创建虚拟环境(Win10) ①为什么要用虚拟环境? 为了解决一个环境多个项目的版本冲突问题 ②如何创建虚拟环境? 用窗口键+R来打开win10的运行窗口,然后在运行输入框输入cmd, ...
- virtualenv创建虚拟环境安装flask
virtualenv 有什么用?如果你象我一样热爱 Python ,那么除了基于 Flask 的项目外 还会有其他项目用到 Python .当项目越来越多时就会面对使用不同版本的 Python 的 问 ...
- virtualenv创建虚拟环境
在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4.所有第三方的包都会被pip安装到Python3的site-packages目录下. 如果我们要同时开发多个应用程序,那这 ...
- python (创建虚拟环境)
Python python 介绍 Python是一门计算机编程语言.是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的 ...
- linux系统 python升级创建虚拟环境
Python3.3以上的版本通过venv模块原生支持虚拟环境,可以代替之前的virtualenv. 该venv模块提供了创建轻量级“虚拟环境”,提供与系统Python的隔离支持.每一个虚拟环境都有其自 ...
- Windows下使用virtualenv创建虚拟环境
操作系统 : windowns10_x64Python版本:3.6.8virtualenv版本:16.7.7virtualenvwrapper版本:1.2.5 方式一:直接使用virtualenv 1 ...
- Pycharm中使用virtualenv创建虚拟环境
虚拟环境是Python解释器的一个私有副本,在这个环境中你可以安装私有包,而且不会影响系统中安装的全局Python解释器. 虚拟环境非常有用,可以在系统的Python解释器中避免包的混乱和版本的冲突. ...
- Windows下利用virtualenvwrapper指定python版本创建虚拟环境
默认已安装virtualenvwrapper 一.添加环境变量(可选) 在系统环境变量中添加 WORKON_HOME ,用来指定新建的虚拟环境的存储位置,如过未添加,默认位置为 %USERPROFIL ...
随机推荐
- H5新增的postMessage跨域解决方案Demo
Demo背景:html中使用iframe嵌入了跨域的vue项目,在html中将参数传入到跨越的vue项目中. 向跨越的子窗口中发送数据 function sendMessage(data) { // ...
- dfs套异或的包含性——cf986C好
很好的题,想了半天,官方题解的解法更好 这种异或问题的包含性在北邮的校赛里就出现过,需要认真学习一下 /* y和所有合法的x合并,如果没有剪枝,那么复杂度爆炸总共要判(2^n*2^n) 可以考虑如下优 ...
- NX二次开发-UFUN读取工程图注释UF_DRF_ask_text_data
1 NX11+VS2013 2 3 4 #include <uf.h> 5 #include <uf_ui.h> 6 #include <uf_drf.h> 7 8 ...
- JavaScript闭包和回调详解
一.闭包 闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现. 闭包有三个特性: 1.函数嵌套函数; 2.函数内部可以引用外部的参数和变量; 3.参 ...
- 牛客多校第九场 A The power of Fibonacci 杜教bm解线性递推
题意:计算斐波那契数列前n项和的m次方模1e9 题解: $F[i] – F[i-1] – F[i-2] = 0$ $F[i]^2 – 2 F[i-1]^2 – 2 F[i-2]^2 + F[i-3] ...
- flutter layout-child
一.Container 二.Padding 三.Center 四.Align 五.FittedBox 六.AspectRatio 七.ConstrainedBox 八.Baseline 九.Fract ...
- Redis基于主从复制的RCE(redis4.x 5.x)复现
使用docker建立redis 拉取镜像 运行 查看 可以连接,存在未授权 https://github.com/Ridter/redis-rce 发送poc i:正向连接 r:反弹 反弹成功
- [14]APUE:API for Mysql
库:/usr/lib64/libmysqlclient.so.#.#... 头文件:/usr/lib64/mysql/mysql.h 一.建立连接 MYSQL *mysql_init(MYSQL *) ...
- 利用DOM节点找对象和直接在标签属性中调函数传值this的书写区别
同样的功能,不同的书写格式. 1.个人觉得比较繁琐的写法,但是比较常见,特别是在大项目的时候常用的就是这种方法: <div id="mouse" onmouseover=&q ...
- delphi 实现最小化系统托盘(rz控件最简单 评论)
1.new -->application 2.在form1中加入一个tPopMenu 命名为pm1 3.uses ShellAPI; 4.定义一个常量在 const WM_TRAYMSG = W ...