基于virtualenv创建python虚拟环境过程图解


Posted in Python onMarch 30, 2020

为什么要创建python虚拟环境

在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4。所有第三方的包都会被pip安装到Python3的site-packages目录下。

如果我们要同时开发多个应用程序,那这些应用程序都会共用一个Python,就是安装在系统的Python 3。如果应用A需要jinja 2.7,而应用B需要jinja 2.6怎么办?

这种情况下,每个应用可能需要各自拥有一套“独立”的Python运行环境。virtualenv就是用来为一个应用创建一套“隔离”的Python运行环境。

创建虚拟环境

安装virtualenv

pip install virtualenv

创建虚拟环境

1. 创建一个存放所有虚拟环境的目录
virtualenv_all

# 创建成功可以看到多了一个目录,就是把python解释器复制了一份
ccdeMacBook-Air:virtualenv_all cc$ ls
s22_crm
ccdeMacBook-Air:virtualenv_all cc$ ls s22_crm/
bin include lib

3. 进入虚拟环境
ccdeMacBook-Air:virtualenv_all cc$ cd s22_crm/
ccdeMacBook-Air:s22_crm cc$ source bin/activate
(s22_crm) ccdeMacBook-Air:s22_crm cc$

# python环境变量已经指向虚拟环境,非常的干净,啥也没有。 可以在虚拟环境中安装项目需要的所有依赖包。
(s22_crm) ccdeMacBook-Air:s22_crm cc$ pip list
Package Version
---------- -------
pip 20.0.2
setuptools 46.1.3
wheel 0.34.2
(s22_crm) ccdeMacBook-Air:s22_crm cc$ which pip
/Users/xiaochao/Documents/code/python_s22/virtualenv_all/s22_crm/bin/pip
(s22_crm) ccdeMacBook-Air:s22_crm cc$ which python
/Users/xiaochao/Documents/code/python_s22/virtualenv_all/s22_crm/bin/python

4. 退出虚拟环境
(s22_crm) ccdeMacBook-Air:s22_crm cc$ deactivate
ccdeMacBook-Air:s22_crm cc$

PyCharm 使用虚拟环境

基于virtualenv创建python虚拟环境过程图解

基于virtualenv创建python虚拟环境过程图解

PyCharm 创建虚拟环境

基于virtualenv创建python虚拟环境过程图解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用mysqldb连接数据库操作方法示例详解
Dec 03 Python
Python中for循环控制语句用法实例
Jun 02 Python
Python ValueError: invalid literal for int() with base 10 实用解决方法
Jun 21 Python
Python中的__slots__示例详解
Jul 06 Python
Python调用C语言的方法【基于ctypes模块】
Jan 22 Python
深入分析python数据挖掘 Json结构分析
Apr 21 Python
Python后台开发Django会话控制的实现
Apr 15 Python
Python将文字转成语音并读出来的实例详解
Jul 15 Python
django实现web接口 python3模拟Post请求方式
Nov 19 Python
Python解释器及PyCharm工具安装过程
Feb 26 Python
解决tensorflow模型压缩的问题_踩坑无数,总算搞定
Mar 02 Python
opencv用VS2013调试时用Image Watch插件查看图片
Jul 26 Python
Python实现RabbitMQ6种消息模型的示例代码
Mar 30 #Python
Anconda环境下Vscode安装Python的方法详解
Mar 29 #Python
配置python的编程环境之Anaconda + VSCode的教程
Mar 29 #Python
Anaconda+VSCode配置tensorflow开发环境的教程详解
Mar 30 #Python
利用django model save方法对未更改的字段依然进行了保存
Mar 28 #Python
Python Tornado之跨域请求与Options请求方式
Mar 28 #Python
关于python 跨域处理方式详解
Mar 28 #Python
You might like
php上传、管理照片示例
2006/10/09 PHP
PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法
2009/05/28 PHP
PHP获取文件后缀名的三个函数
2012/10/15 PHP
探讨PHP中this,self,parent的区别详解
2013/06/08 PHP
ThinkPHP路由详解
2015/07/27 PHP
深入浅出讲解:php的socket通信原理
2016/12/03 PHP
Javascript & DHTML 实例编程(教程)(三)初级实例篇1—上传文件控件实例
2007/06/02 Javascript
为jQuery.Treeview添加右键菜单的实现代码
2010/10/22 Javascript
jQuery使用append在html元素后同时添加多项内容的方法
2015/03/26 Javascript
JavaScript中pop()方法的使用教程
2015/06/09 Javascript
jQuery超酷平面式时钟效果代码分享
2020/03/30 Javascript
Js类的静态方法与实例方法区分及jQuery拓展的两种方法
2016/06/03 Javascript
js放大镜放大购物图片效果
2017/01/18 Javascript
基于Angular.js实现的触摸滑动动画实例代码
2017/02/19 Javascript
关于页面刷新vuex数据消失问题解决方案
2017/07/03 Javascript
脚手架vue-cli工程webpack的基本用法详解
2018/09/29 Javascript
js实现倒计时器自定义时间和暂停
2019/02/25 Javascript
javascript for循环性能测试示例
2019/08/07 Javascript
对layui中的onevent 和event的使用详解
2019/09/06 Javascript
vue中input的v-model清空操作
2019/09/06 Javascript
[13:21]DOTA2国际邀请赛采访专栏:RSnake战队国士无双,Fnatic.Fly
2013/08/06 DOTA
[01:00:06]加油DOTA_EP01_网络版
2014/08/09 DOTA
[01:12:08]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.24
2019/09/10 DOTA
python解析xml文件实例分享
2013/12/04 Python
Python字符串逐字符或逐词反转方法
2015/05/21 Python
使用Python进行二进制文件读写的简单方法(推荐)
2016/09/12 Python
python实现稀疏矩阵示例代码
2017/06/09 Python
一条命令解决mac版本python IDLE不能输入中文问题
2018/05/15 Python
keras的siamese(孪生网络)实现案例
2020/06/12 Python
阿迪达斯法国官方网站:adidas法国
2018/03/20 全球购物
自我评价怎么写正确呢?
2013/12/02 职场文书
新品发布会主持词
2014/04/02 职场文书
大学开学典礼新闻稿
2015/07/17 职场文书
go语言使用Casbin实现角色的权限控制
2021/06/26 Golang
Java基础之线程锁相关知识总结
2021/06/30 Java/Android
Python实现猜拳与猜数字游戏的方法详解
2022/04/06 Python