Python虚拟环境virtualenv是如何使用的


Posted in Python onJune 20, 2021

了解虚拟环境

如果在一台机器上,想开发多个不同的项目,需要用到同一个包的不同版本,如果还使用上面的命令,在同一个目录下安装或者更新,其它的项目必须就无法运行了,怎么办呢?

解决方案:虚拟环境

那么什么是虚拟环境呢?

虚拟环境其实就是对真实 python 环境的复制,这样我们在复制的 python 环境中安装包就不会影响到真实的python环境。通过建立多个虚拟环境,在不同的虚拟环境中开发项目就实现了项目之间的隔离。

虚拟环境库的安装

我们这里使用 virtualenv 来创建虚拟环境。
pip 默认的源安装第三库会有点慢,可以配置一下其他的镜像源。

Windows上安装

cmd 窗口查看系统是否安装了virtualenv

virtualenv --version

pip 安装 virtualenv

pip3 install virtualenv
pip3 install virtualenvwrapper-win

virtualenvwrapper-win虚拟环境扩展包(指令便捷)

虚拟环境创建

cmd窗口 下创建 python3 虚拟环境 py_django

mkvirtualenv -p python3 py_django

Python虚拟环境virtualenv是如何使用的

注意:
Windows 创建的虚拟环境默认在 C:\Users\Administrator\Envs, Administrator 代表我当前电脑使用的用户你们的可能在其他用户下,如需指定创建的虚拟环境的存放的路径,可以在电脑的系统环境变量中添加WORKON_HOME 系统变量

Python虚拟环境virtualenv是如何使用的

Linux上安装

安装虚拟环境

sudo pip3 install virtualenv
sudo pip3 install virtualenvwrapper

需保证 Linux上有 Python3的环境。
安装完虚拟环境后输入如下指令测试

mkvirtualenv test

如果提示找不到mkvirtualenv命令,须配置环境变量

# 1、创建目录用来存放虚拟环境
mkdir $HOME/.virtualenvs

# 2、打开~/.bashrc文件
vim ~/.bashrc

# 2.1 添加如下两行
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

# 3、运行
source ~/.bashrc

WORKON_HOME 存放虚拟环境目录位置可以自己单独设置。

创建虚拟环境

mkvirtualenv py_flask

进入虚拟环境

workon py_flask

退出虚拟环境

如果所在环境为真实环境,会提示deactivate:未找到命令

deactivate py_flask

虚拟环境指令

Windows 和 Linux 平台上的指令都一致。

Python虚拟环境virtualenv是如何使用的

注意:

先退出:deactivate
再删除:rmvirtualenv 虚拟环境名称

虚拟环境总结

一、使用虚拟环境不会让主解释器好多库乱

二、例如在单独的虚拟环境下安装 Flask,就知道在后续开发中所使用的所有库,用pip freeze命令就知道你的项目需要什么环境,而在主解释器有好多项目没用到的库。使用虚拟环境到部署到服务器上则方便环境配置,不需要一个一个筛选所需库。

在虚拟环境中利用

  • pip freeze 查看项目所需库环境。
  • pip freeze > requirements.txt导出项目所需库信息。
  • pip install -r requirements.tx批量安装项目所需库。

三、在同一台机器上开发多个项目,而遇到项目所需同一库的版本不一致。因此使用虚拟环境让每个项目独立隔离出来,可以单独使用不同版本库。

到此这篇关于Python虚拟环境virtualenv是如何使用的的文章就介绍到这了,更多相关Python虚拟环境virtualenv内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python共享引用(多个变量引用)示例代码
Dec 04 Python
使用IronPython把Python脚本集成到.NET程序中的教程
Mar 31 Python
在Python 3中实现类型检查器的简单方法
Jul 03 Python
举例讲解Python面相对象编程中对象的属性与类的方法
Jan 19 Python
Python文件操作,open读写文件,追加文本内容实例
Dec 14 Python
Python 中urls.py:URL dispatcher(路由配置文件)详解
Mar 24 Python
python实战之实现excel读取、统计、写入的示例讲解
May 02 Python
在windows下使用python进行串口通讯的方法
Jul 02 Python
通过PHP与Python代码对比的语法差异详解
Jul 10 Python
Python学习笔记之While循环用法分析
Aug 14 Python
使用Rasterio读取栅格数据的实例讲解
Nov 26 Python
Python headers请求头如何实现快速添加
Nov 03 Python
Python机器学习之底层实现KNN
Jun 20 #Python
利用python进行数据加载
Jun 20 #Python
Python编解码问题及文本文件处理方法详解
浅谈Python协程asyncio
Jun 20 #Python
Python3接口性能测试实例代码
Jun 20 #Python
使用Djongo模块在Django中使用MongoDB数据库
python自动计算图像数据集的RGB均值
You might like
php4的session功能评述(三)
2006/10/09 PHP
preg_match_all使用心得分享
2014/01/31 PHP
php异常处理使用示例
2014/02/25 PHP
mac下Apache + MySql + PHP搭建网站开发环境
2014/06/02 PHP
php上传图片客户端和服务器端实现方法
2015/03/30 PHP
php mysql procedure实现获取多个结果集的方法【基于thinkPHP】
2016/11/09 PHP
Thinkphp 框架基础之入口文件功能、定义与用法分析
2020/04/27 PHP
wordpress之js库集合研究介绍
2007/08/17 Javascript
javascript操作表格排序实例分析
2015/05/06 Javascript
jquery性能优化高级技巧
2015/08/24 Javascript
javascript的列表切换【实现代码】
2016/05/03 Javascript
你不知道的 javascript【推荐】
2017/01/08 Javascript
jQuery在header中设置请求信息的方法
2017/03/06 Javascript
javascript基本数据类型和转换
2017/03/17 Javascript
详解vuejs几种不同组件(页面)间传值的方式
2017/06/01 Javascript
element-ui 表格数据时间格式化的方法
2018/08/24 Javascript
使用微信小程序开发弹出框应用实例详解
2018/10/18 Javascript
Vue实现兄弟组件间的联动效果
2020/01/21 Javascript
Vue 封装防刷新考试倒计时组件的实现
2020/06/05 Javascript
vue 路由meta 设置导航隐藏与显示功能的示例代码
2020/09/04 Javascript
vue a标签点击实现赋值方式
2020/09/07 Javascript
python实现堆栈与队列的方法
2015/01/15 Python
Python实现批量将word转html并将html内容发布至网站的方法
2015/07/14 Python
通过源码分析Python中的切片赋值
2017/05/08 Python
django admin.py 外键,反向查询的实例
2019/07/26 Python
Python制作词云图代码实例
2019/09/09 Python
Python获取统计自己的qq群成员信息的方法
2019/11/15 Python
Python 用turtle实现用正方形画圆的例子
2019/11/21 Python
python 计算概率密度、累计分布、逆函数的例子
2020/02/25 Python
Python  word实现读取及导出代码解析
2020/07/09 Python
python类共享变量操作
2020/09/03 Python
Pycharm编辑器功能之代码折叠效果的实现代码
2020/10/15 Python
Python实现石头剪刀布游戏
2021/01/20 Python
天逸系统(武汉)有限公司Java笔试题
2015/12/29 面试题
服装电子商务创业计划书
2014/01/30 职场文书
初中毕业生自我评价
2015/03/02 职场文书