python虚拟环境 virtualenv的简单使用


Posted in Javascript onJanuary 21, 2020

virtualenv是什么?

virtualenv是一个创建隔绝的Python环境的工具。

为什么要创建虚拟环境?

它解决了“项目X依赖于版本1.x,而项目Y需要项目4.x”的两难问题,而且使你的全局site-packages目录保持干净和可管理。

简介

隔离不同的python环境,如有点项目用Django1.11而有的项目用Django2.0,为了防止不断地重新在全局环境中反复安装不同版本的Django,可以采用两个虚拟环境。

这样既保证了两个环境之间的隔离,也不会污染全局环境,保证全局环境的干净

安装virtualenv模块

$ pip3 install virtualenv -i https://pypi.tuna.tsinghua.edu.cn/simple/

创建虚拟环境

切到想要创建虚拟环境的路径下,执行以下命令进行安装

$ virtualenv envname # 创建一个名字为envname的虚拟环境
$ virtualenv -p python2 envname # 如果安装了多个python版本,如py2和py3,需要指定使用哪个创建虚拟环境

启停虚拟环境

# 进入虚拟环境文件
cd envname
# 进入相关的启动文件夹
cd Scripts
activate # 启动虚拟环境
deactivate # 退出虚拟环境

虚拟环境下的操作

# 在虚拟环境下查看当前python版本
python -V
# 在虚拟环境下查看当前pip版本
pip -V
# 查看当前虚拟环境安装的模块
pip list
# 于虚拟环境下安装模块
pip install module_name

于虚拟环境中安装的模块的默认路径如下

$虚拟环境路径\Lib\site-packages\

pycharm引用该虚拟环境

直接在pycharm中选择解释器的时候选择该虚拟环境下的python解释器即可

若pycharm直接打开该虚拟环境的文件夹,则该虚拟环境会处于激活状态(可在pycharm的Terminal中确认)

如何通过该虚拟环境创建Django项目

  • 切换到新建好的虚拟环境目录并激活该虚拟环境,
  • 在该虚拟环境内(激活状态下),执行django-admin startproject Project_name .,就会在当前虚拟环境根目录下新建一个Django项目的文件夹

删除虚拟环境

直接删除该文件夹即可

virtualenvwrapper

原生的virtualenv模块在对虚拟环境的操作上略微繁琐,virtualenvwrapper是对它的封装版本,在操作上方便了很多,如通过rmvirtualenv venvName来删除某个虚拟环境

pip install virtualenvwrapper # 这是对virtualenv的封装版本,一定要在virtualenv后安装

总结

以上所述是小编给大家介绍的python虚拟环境 virtualenv的简单使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
javascript 四则运算精度修正函数代码
May 31 Javascript
js前台判断开始时间是否小于结束时间
Feb 23 Javascript
JavaScript实现简单Tip提示框效果
Apr 20 Javascript
JS在Chrome浏览器中showModalDialog函数返回值为undefined的解决方法
Aug 03 Javascript
Javascript6中字符串的四个新用法分享
Sep 11 Javascript
Java与JavaScript中判断两字符串是否相等的区别
Mar 13 Javascript
使用vue-cli导入Element UI组件的方法
May 16 Javascript
webpack 开发和生产并行设置的方法
Nov 08 Javascript
Vue中的基础过渡动画及实现原理解析
Dec 04 Javascript
HTML+JavaScript实现扫雷小游戏
Sep 30 Javascript
VUEX-action可以修改state吗
Nov 19 Javascript
react结合bootstrap实现评论功能
May 30 Javascript
详解vue中v-bind:style效果的自定义指令
Jan 21 #Javascript
vue.js iview打包上线后字体图标不显示解决办法
Jan 20 #Javascript
Angular单元测试之事件触发的实现
Jan 20 #Javascript
vue elementui 实现搜索栏公共组件封装的实例代码
Jan 20 #Javascript
D3.js 实现带伸缩时间轴拓扑图的示例代码
Jan 20 #Javascript
阿望教你用vue写扫雷小游戏
Jan 20 #Javascript
JavaScript Window窗口对象属性和使用方法
Jan 19 #Javascript
You might like
php使用百度翻译api示例分享
2014/01/31 PHP
10个对初学者非常有用的PHP技巧
2016/04/06 PHP
Laravel框架实现修改登录和注册接口数据返回格式的方法
2018/08/17 PHP
PHP+Redis开发的书签案例实战详解
2019/07/09 PHP
php生成HTML文件的类方法
2019/10/11 PHP
js几个验证函数代码
2010/03/25 Javascript
web性能优化之javascript性能调优
2012/12/28 Javascript
javascript简单事件处理和with用法介绍
2013/09/16 Javascript
js 限制input只能输入数字、字母和汉字等等
2013/12/18 Javascript
javascript运行机制之this详细介绍
2014/02/07 Javascript
使用node.js半年来总结的 10 条经验
2014/08/18 Javascript
jQuery中slice()方法用法实例
2015/01/07 Javascript
JS处理json日期格式化问题
2015/10/01 Javascript
js点击按钮实现带遮罩层的弹出视频效果
2015/12/19 Javascript
图文详解JavaScript的原型对象及原型链
2016/08/02 Javascript
基于Node的React图片上传组件实现实例代码
2017/05/10 Javascript
微信小程序云开发之模拟后台增删改查
2019/05/16 Javascript
Angular+ionic实现折叠展开效果的示例代码
2020/07/29 Javascript
vue移动端下拉刷新和上滑加载
2020/10/27 Javascript
[01:02:55]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
python实现排序算法
2014/02/14 Python
python根据距离和时长计算配速示例
2014/02/16 Python
django+xadmin+djcelery实现后台管理定时任务
2018/08/14 Python
python中调试或排错的五种方法示例
2019/09/12 Python
python如何通过闭包实现计算器的功能
2020/02/22 Python
Python enumerate() 函数如何实现索引功能
2020/06/29 Python
Python getsizeof()和getsize()区分详解
2020/11/20 Python
利用python为PostgreSQL的表自动添加分区
2021/01/18 Python
matplotlib交互式数据光标mpldatacursor的实现
2021/02/03 Python
雅诗兰黛澳大利亚官网:Estée Lauder澳大利亚
2019/05/31 全球购物
介绍一下Java的安全机制
2012/06/28 面试题
经贸专业毕业生求职信
2014/03/23 职场文书
招商引资工作汇报
2014/10/28 职场文书
2015年领导干部廉洁自律工作总结
2015/05/26 职场文书
python使用glob检索文件的操作
2021/05/20 Python
SpringBoot系列之MongoDB Aggregations用法详解
2022/02/12 MongoDB