virtualenv隔离Python环境的问题解析


Posted in Python onJune 21, 2022

virtualenv介绍

virtualenv为应用提供了隔离的Python运行环境,解决了不同应用间多版本的冲突问题。
virtualenv把系统Python复制一份到virtualenv的环境,用命令source venv/bin/activate进入一个virtualenv环境时,virtualenv会修改相关环境变量,让命令python和pip均指向当前的virtualenv环境。
安装 virtualenv

virtualenv应用

pip3 install virtualenv

创建项目

mkdir myprojectcd myproject/

创建一个新的python环境

virtualenv --no-site-packages py_new
# 参数:--no-site-packages 已经安装到系统Python环境中的所有第三方包都不会复制过来

新建的Python环境被放到当前目录下的py_new目录。
有了py_new环境,可以用source进入该环境:

source py_new/bin/activate

pip安装的包都被安装到py_new这个环境下,系统Python环境不受任何影响

pip install pandas

退出当前的py_new环境

deactivate

退出后pip或python均是在系统Python环境下执行

补充:virtualenv创建“隔离”的Python运行环境

Windows 安装mkvirtualenv

pip install virtualenv
pip install virtualenvwrapper  

新建虚拟python环境:

1.创建python工程目录:
2.创建一个独立的Python运行环境,命名为redis:

virtualenv  redis

3.激活环境:(或workon)

cd D:\05_python_virtualenv\redis\Scripts
.\activate

注意到命令提示符变了,有个(venv)前缀,表示当前环境是一个名为venv的Python环境

4.退出当前的venv环境:deactivate

出现错误:virtualenv: error: unrecognized arguments: --no-site-packages
使用virtualenv --version,看到版本大于20,就默认这个参数,可以取消掉–no-site-packages

virtualenvwrapper --help
rmvirtualenv redis

在win电脑的环境变量-系统变量:新增:WORKON_HOME,为D:\05_python_virtualenv

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


Tags in this post...

Python 相关文章推荐
Python中lambda的用法及其与def的区别解析
Jul 28 Python
Python处理PDF及生成多层PDF实例代码
Apr 24 Python
Python将多个excel表格合并为一个表格
Feb 22 Python
Python 确定多项式拟合/回归的阶数实例
Dec 29 Python
python可视化实现代码
Jan 15 Python
Python实现计算对象的内存大小示例
Jul 10 Python
python元组的概念知识点
Nov 19 Python
Python3.7.0 Shell添加清屏快捷键的实现示例
Mar 23 Python
python openCV自制绘画板
Oct 27 Python
python集合的新增元素方法整理
Dec 07 Python
python常量折叠基础知识点讲解
Feb 28 Python
Pandas||过滤缺失数据||pd.dropna()函数的用法说明
May 14 Python
pd.drop_duplicates删除重复行的方法实现
Jun 16 #Python
使用pd.merge表连接出现多余行的问题解决
Jun 16 #Python
pd.DataFrame中的几种索引变换的实现
Python实战实现爬取天气数据并完成可视化分析详解
pandas时间序列之pd.to_datetime()的实现
Jun 16 #Python
pandas中pd.groupby()的用法详解
Jun 16 #Python
python中pd.cut()与pd.qcut()的对比及示例
Jun 16 #Python
You might like
繁体中文转换为简体中文的PHP函数
2006/10/09 PHP
PHP 和 XML: 使用expat函数(二)
2006/10/09 PHP
php读取EXCEL文件 php excelreader读取excel文件
2012/12/06 PHP
php发送邮件的问题详解
2015/06/22 PHP
基于php实现七牛抓取远程图片
2015/12/01 PHP
浅析Yii2缓存的使用
2016/05/10 PHP
浅析php如何实现App常用的秒发功能
2016/08/03 PHP
PHP中SERIALIZE和JSON的序列化与反序列化操作区别分析
2016/10/11 PHP
JS 添加网页桌面快捷方式的代码详细整理
2012/12/27 Javascript
js中继承的几种用法总结(apply,call,prototype)
2013/12/26 Javascript
JavaScript中的null和undefined区别介绍
2015/01/01 Javascript
使用js画图之正弦曲线
2015/01/12 Javascript
JavaScript实现向OL列表内动态添加LI元素的方法
2015/03/21 Javascript
3kb jQuery代码搞定各种树形选择的实现方法
2016/06/10 Javascript
Bootstrap学习笔记 轮播(Carousel)插件
2017/03/21 Javascript
在 Angular中 使用 Lodash 的方法
2018/02/11 Javascript
基于vue-cli3和element实现登陆页面
2019/11/13 Javascript
JS实现滑动插件
2020/01/15 Javascript
OpenCV实现人脸识别
2017/04/07 Python
Python实现一个服务器监听多个客户端请求
2018/04/12 Python
python3利用Socket实现通信的方法示例
2019/05/06 Python
使用python分析统计自己微信朋友的信息
2019/07/19 Python
django-初始配置(纯手写)详解
2019/07/30 Python
自定义Django Form中choicefield下拉菜单选取数据库内容实例
2020/03/13 Python
python+django+selenium搭建简易自动化测试
2020/08/19 Python
什么时候需要进行强制类型转换
2016/09/03 面试题
事业单位个人应聘自荐信
2013/09/21 职场文书
2014幼儿教师个人工作总结
2014/12/03 职场文书
毕业设计指导教师评语
2014/12/30 职场文书
天坛导游词
2015/02/02 职场文书
Redis 中使用 list,streams,pub/sub 几种方式实现消息队列的问题
2022/03/16 Redis
Java实现经典游戏泡泡堂的示例代码
2022/04/04 Java/Android
Go并发4种方法简明讲解
2022/04/06 Golang
ICOM R71E和R72E图文对比解说
2022/04/07 无线电
Vscode中SSH插件如何远程连接Linux
2022/05/02 Servers
JavaScript前端面试扁平数据转tree与tree数据扁平化
2022/06/14 Javascript