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 相关文章推荐
setTimeout和setInterval的区别你真的了解吗?
Mar 31 Javascript
Microsfot .NET Framework4.0框架 安装失败的解决方法
Aug 14 Javascript
escape函数解决js中ajax传递中文出现乱码问题
Oct 30 Javascript
javascript每日必学之基础入门
Feb 16 Javascript
通过Tabs方法基于easyUI+bootstrap制作工作站
Mar 28 Javascript
javascript实现抽奖程序的简单实例
Jun 07 Javascript
简单实现jQuery上传图片显示预览功能
Jun 29 jQuery
Node.js dgram模块实现UDP通信示例代码
Sep 26 Javascript
Vue 组件封装 并使用 NPM 发布的教程
Sep 30 Javascript
解决node.js含有%百分号时发送get请求时浏览器地址自动编码的问题
Nov 20 Javascript
原生js实现无缝轮播图
Jan 11 Javascript
解决vue动态路由异步加载import组件,加载不到module的问题
Jul 26 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编码规范-php coding standard
2007/03/16 PHP
关于mysql字符集设置了character_set_client=binary 在gbk情况下会出现表描述是乱码的情况
2013/01/06 PHP
php对数组排序代码分享
2014/02/24 PHP
php+layui数据表格实现数据分页渲染代码
2019/10/26 PHP
基于jquery的Repeater实现代码
2010/07/17 Javascript
EXTJS记事本 当CompositeField遇上RowEditor
2011/07/31 Javascript
Javascript变量函数浅析
2011/09/02 Javascript
解决JS浮点数运算出现Bug的方法
2013/03/12 Javascript
JavaScript加强之自定义event事件
2013/09/21 Javascript
jQuery响应enter键的实现思路
2014/04/18 Javascript
jquery浏览器滚动加载技术实现方案
2014/06/03 Javascript
用jquery实现动画跳到顶部和底部(这个比较简单)
2014/09/01 Javascript
JavaScript替换当前页面的方法
2015/04/03 Javascript
jQuery实现的漂亮表单效果代码
2015/08/18 Javascript
Bootstrap与KnockoutJs相结合实现分页效果实例详解
2016/05/03 Javascript
jQuery实现下拉菜单(内容为时间)的实时更新及图表的随动更新的方法
2016/07/07 Javascript
jquery.Callbacks的实现详解
2016/11/30 Javascript
详解plotly.js 绘图库入门使用教程
2018/02/23 Javascript
微信小程序实现留言功能
2018/10/31 Javascript
使用React手写一个对话框或模态框的方法示例
2019/04/25 Javascript
将Vue组件库更换为按需加载的方法步骤
2020/05/06 Javascript
Python和php通信乱码问题解决方法
2014/04/15 Python
Python函数中*args和**kwargs来传递变长参数的用法
2016/01/26 Python
opencv实现简单人脸识别
2021/02/19 Python
django日志默认打印request请求信息的方法示例
2020/05/17 Python
keras的load_model实现加载含有参数的自定义模型
2020/06/22 Python
购买澳大利亚最好的服装和内衣在线:BONDS
2016/10/14 全球购物
请介绍一下Ant
2016/07/22 面试题
大学生入党思想汇报
2014/01/14 职场文书
大学活动邀请函
2014/01/28 职场文书
暑期社会实践心得体会
2014/09/02 职场文书
领导走群众路线整改措施思想汇报
2014/10/12 职场文书
告知书格式
2015/07/01 职场文书
教师研修随笔感言
2015/11/18 职场文书
Android Studio实现简易进制转换计算器
2022/05/20 Java/Android
Vue router配置与使用分析讲解
2022/12/24 Vue.js