Python 虚拟环境 pyenv、venv(pyvenv)、virtualenv之间的区别
请参考连接 https://blog.zengrong.net/post/2167.html
https://blog.csdn.net/lanonjj/article/details/51050212
为避免链接失效,把原文做了复制黏贴
另外在python3.6中,虚拟应该用如下命令创建
python3 -m venv /path/to/new/virtual/environment 直接用pyvenv /path/to/new/virtual/environment
创建也能成功,但是会有一个warning,具体解释可以参考这个文章https://docs.python.org/3/library/venv.html
yy1s@linux-9qk9:~> pyvenv monitor2
WARNING: the pyenv script is deprecated in favour of `python3.6 -m venv`
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
为了解决包依赖、安装权限和 python 版本问题,程序员们制造了许多工具。我把它们做一个汇总,便于查找。
这里介绍的工具都是当前流行的,不会包含已经不再维护的工具。
virtualenv
virtualenv 是目前最流行的 python 虚拟环境配置工具。它不仅同时支持 python2 和 python3,而且可以为每个虚拟环境指定 python 解释器,并选择不继承基础版本的包。
virtualenvwrapper
顾名思义,virtualenvwrapper 是对 virtualenv 的一个封装,目的是使后者更好用。
关于为什么使用 shell 脚本开发,作者专门 进行了解释 。
virtualenvwrapper 还有针对 vim 用户和 emacs 用户的 扩展 。
virtualenvwrapper 能支持 bash/ksh/zsh ,所以我们可以看出,它不支持 Windows。
virtualenvwrapper-win
由于 virtualenvwrapper 基于 shell 开发,因此不能在 Windows 系统上使用。但我们可以使用针对 Windows batch shell 的 virtualenvwrapper-win。
venv
Python 从3.3 版本开始,自带了一个虚拟环境 venv,在 PEP-405 中可以看到它的详细介绍。它的很多操作都和 virtualenv 类似。
因为是从 3.3 版本开始自带的,这个工具也仅仅支持 python 3.3 和以后版本。所以,要在 python2 上使用虚拟环境,依然要利用 virtualenv 。
在 *nix 系统上,可以直接执行 pyvenv /path/to/new/virtual/enviorment 来创建一个虚拟环境,在 Windows 系统上,则可以使用 python -m venv myenv 来创建。
2015-04-18 更新:
pyvenv 3.4 在 Ubuntu 14.04 下有 bug,如下:
1 |
pyvenv ➤ python3 -m venv blog |
解决方法是创建一个不含 pip 的虚拟环境,然后手动安装 pip :
1 |
pyvenv-3.4 --without-pip venvdir |
参见:
pyenv
我们可以用许多方法让不同的 Python 版本在系统上共存。
例如在 OS X 上,如果使用官方提供的 DMG 版本安装,那么自带的 python2 和新安装的 python3 是可以共存的。python3 可以使用 python3 来调用,甚至 pip 都可以使用 pip3 来调用。
但如果还有其它小版本需要共存么?我要记忆多少命令呢?
pyenv 用来解决这类问题。它可以安装、卸载、编译、管理多个 python 版本,并随时将其中一个设置为工作环境。
pyenv 不支持 Windows 系统。
pywin
Windows 上有一个 pyenv 的替代品,是 pywin 。它用来在多个安装的 Python 版本之间进行切换,也支持 MSYS/MINGW32 。
Python Launcher for Windows
Python 从3.3版本开始(又是3.3?),在 Windows 系统中自带了一个 py.exe 启动工具。如果你是使用 Python.org 官网下载的安装包安装的 Python 3.3(或更新版本)环境,那么可以直接在命令提示符中使用这个工具。
py 可以打开默认的 python 提示符; py -2.7 和 py -3 打开对应的 Python 版本。
—- 分割线 —-
上面介绍的工具中,前四个是虚拟环境切换工具,后三个是 Python 版本环境切换工具。将这两套工具结合使用,可以完美解决 python 多版本环境的问题。
(全文完)
Python 虚拟环境 pyenv、venv(pyvenv)、virtualenv之间的区别的更多相关文章
- python 虚拟环境 pyenv
一.pyenv简介 pyenv 主要用来管理 Python 的版本,比如一个项目需要 Python 2.x ,一个项目需要 Python 3.x . pyenv 通过系统修改环境变量来实现 Pytho ...
- 虚拟环境及venv和virtualenv
一.虚拟环境概述 Python应用程序通常会使用不在标准库内的软件包和模块.应用程序有时需要特定版本的库,修复特定的错误,或者可以使用库的过时版本的接口编写应用程序. 这说明一个Python安装可能无 ...
- python 虚拟环境使用与管理(virtualenv)
安装虚拟环境 pip install virtualenv 安装虚拟环境管理工具 pip install virtualenvwrapper-win 设置虚拟环境目录(虚拟环境存放位置) 默认创建的虚 ...
- centos6 pyenv和virtualenv搭建python虚拟环境
安装pyenv 基础环境软件包安装 yum -y install gcc gcc-c++ make git patch openssl-devel zlib-devel readline-devel ...
- CentOS使用virtualenv搭建独立的Python环境-python虚拟环境
CentOS使用virtualenv搭建独立的Python环境-python虚拟环境 virtualenv可以搭建虚拟且独立的python环境,可以使每个项目环境与其他项目独立开来,保持环境的干净,解 ...
- 第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块
第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块 virtualenv简介 1.安装virtuale ...
- Linux创建Python虚拟环境
Linux创建Python虚拟环境 安装 pip install virtualenv 基本使用 为一个工程创建一个虚拟环境: $ cd my_project $ virtualenv venv #v ...
- Sublimeの虚拟环境(Venv)设置
这里主要介绍,在使用 Python 虚拟环境(Venv)时,SublimeText 该怎么设置 为什么使用虚拟环境(Venv) 因为,我有洁癖! 我就是喜欢看到,pip list 命令下什么 Pack ...
- 通过pyenv和virtualenv创建多版本Python虚拟环境
虚拟环境使用第三方工具virtualenv创建,首先输入以下命令检查系统是否已经安装virtualenv. $ virtualenv --version 如果显示virtualenv版本号,则说明已经 ...
随机推荐
- Unity3D人脸建模 AvataSDK研究
1.Unity与windows交互 调用文件浏览器 1.用C#调用comdlg32.dll , 利用GetOpenFileName实现打开文件对话框 <1> 整体参考https://w ...
- CHD 5.15 安装 Kylin
这里主要参考官网安装单机案例,并写入到脚本中.具体请看如下: 1.说明 这里采用的是root用户安装,但是运行时需要改一些配置,不然没有权限 2.安装 ...
- xml嵌套防止解析
举个例子 <?xml version="1.0" encoding="UTF-8"?><Messages><Message typ ...
- Polar Code(1)极化码SC译码迭代公式的理解
采用对数似然比求解的迭代公式推导: 考虑 如上图,将L的部分看为一个整体,用 exp(a)和exp(b)代替,并对式子左右都取对数,则公式变为如下所示: 对数似然比 上述公式等效一下公式: 进一步可等 ...
- docker image 详解
docker iamge docker 镜像: [root@localhost ~]# docker image --help Usage: docker image COMMAND 管理镜像 Com ...
- 7A - Max Sum
Given a sequence a[1],a[2],a[3]......a[n], your job is to calculate the max sum of a sub-sequence. F ...
- Linux permission denied问题
初试Linux 本来想试一试递归的mkdir -p结果遇到了permission denied,但是自己明明是管理员啊 查了博客,在文件名前加上chmod 777 ,例如chmod 777 temp ...
- 201771010134杨其菊《面向对象程序设计java》第九周学习总结
第九周学习总结 第一部分:理论知识 异常.断言和调试.日志 1.捕获 ...
- 00.pt-toolkit 目录
一. 好用便利的工具,常用 pt-align 对齐文本格式pt-archiver 循序渐进的归档表,删除表,迁移数据pt-config-diff 对比不同配置文件.服务器配置参数pt-diskstat ...
- python第十九天 关于方法,函数
1.先从简单的函数说起 from inspect import isfunction 导入判断是否是function def foo():pass 定义了一个函数 print(foo) <fun ...