Python virtualenv虚拟环境

在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4。所有第三方的包都会被pip安装到Python3的site-packages目录下。

如果我们要同时开发多个应用程序,那这些应用程序都会共用一个Python,就是安装在系统的Python 3。如果应用A需要jinja 2.7,而应用B需要jinja 2.6怎么办?

这种情况下,每个应用可能需要各自拥有一套“独立”的Python运行环境。virtualenv就是用来为一个应用创建一套“隔离”的Python运行环境。

首先,我们用pip安装virtualenv:

[[email protected] ~]# pip3 install virtualenv
Collecting virtualenv
Downloading https://files.pythonhosted.org/packages/8b/12/8d4f45b8962b03ac9efefe5ed5053f6b29334d83e438b4fe379d21c0cb8e/virtualenv-16.7.5-py2.py3-none-any.whl (3.3MB)
|████████████████████████████████| 3.3MB 615kB/s
Installing collected packages: virtualenv
Successfully installed virtualenv-16.7.

安装完成后可以查看一下

[[email protected] bin]# ls
2to3 django-admin.py idle3.6 pip3.6 python3 python3.6m-config uwsgi wsdump.py
2to3-3.6 docker-compose jsonschema __pycache__ python3.6 python3-config uwsgi.log
chardetect easy_install-3.6 pip pydoc3 python3.6-config pyvenv uwsgi.pid
django-admin idle3 pip3 pydoc3.6 python3.6m pyvenv-3.6 virtualenv

安装完成后使用virtualenv --version查看版本

[[email protected] bin]# virtualenv --version
bash: virtualenv: 未找到命令...
[[email protected] bin]#

淡定,因为我用的不是自带的Python2,用的3,yum这些需要用的是Python2,所以我的默认还是Python2

接下来添加软连接

[[email protected] bin]# ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualevn
[[email protected] bin]# virtualevn --version
16.7.5
[[email protected] bin]#

搞定

然后,假定我们要开发一个新的项目,需要一套独立的Python运行环境,可以这么做:

第一步,创建目录:

[[email protected] shaobo]# mkdir ven

第二步,创建一个独立的Python运行环境,命名为venv

唉,折腾了好久一直不行提示那个configparser模块找不到,没有办法

只能重新安装Python了

先把之前的卸载干净,删除方法,我是将所有的文件全部删除了

1.先安装一些我遇到的依赖问题(如果有依赖问题按提示安装):
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel

2.官网下载源码包
wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tar.xz

3.解压文件
xz -d Python-3.7.1.tar.xz
tar -xvf Python-3.7.1.tar

4.进入文件目录
cd Python-3.7.1
 
5.开始安装编译
./configure --prefix=/usr/local/python3.7
make
make install

6.让centos7 使用python3.7

ln -s /usr/local/python3.7/bin/python3 /usr/bin/python3

ln -s /usr/local/python3.7/bin/pip3 /usr/bin/pip3

到此安装完成。

重复上边安装virtualenv

pip3 install virtualenv

这个我也不知道是啥,参考别人的

pip3 install gunicorn

[[email protected] testvenv]# virtualenv --no-site-packages -p /usr/bin/python3 venv
Running virtualenv with interpreter /usr/bin/python3
Already using interpreter /usr/bin/python3
Using base prefix ‘/usr/bin/python3.7‘
New python executable in /opt/shaobo/testvenv/venv/bin/python3
Also creating executable in /opt/shaobo/testvenv/venv/bin/python
Installing setuptools, pip, wheel...
done.
[[email protected] testvenv]# ls

搞定了激动哟

第三步:激活虚拟环境

先进入bin目录

[[email protected] venv]# cd bin/
[[email protected] bin]# ls
activate activate.fish activate_this.py easy_install pip pip3.7 python3 python-config
activate.csh activate.ps1 activate.xsh easy_install-3.7 pip3 python python3.7 wheel

然后激活虚拟环境

[[email protected] bin]# source ./activate
(venv) [[email protected] bin]#

我们尝试安装一个request

(venv) [[email protected] bin]# pip3 install request
Collecting request
Downloading https://files.pythonhosted.org/packages/f1/27/7cbde262d854aedf217061a97020d66a63163c5c04e0ec02ff98c5d8f44e/request-2019.4.13.tar.gz
Collecting get (from request)

然后我们进入site_packages中查看安装的模块

(venv) [[email protected] python3.7]# cd site-packages/
(venv) [[email protected] site-packages]# ls
easy_install.py pkg_resources __pycache__ setuptools
get post query_string setuptools-41.2.0.dist-info
get-2019.4.13.dist-info post-2019.4.13.dist-info query_string-2019.4.13.dist-info wheel
pip public request wheel-0.33.6.dist-info
pip-19.2.3.dist-info public-2019.4.13.dist-info request-2019.4.13.dist-info
(venv) [[email protected] site-packages]#

退出虚拟环境

(venv) [[email protected] bin]# deactivate
[[email protected] bin]#

ok,结束了!

原文地址:https://www.cnblogs.com/leslie003/p/11499041.html

时间: 2024-07-31 23:38:03

Python virtualenv虚拟环境的相关文章

python virtualenv虚拟环境配置

http://blog.csdn.net/pipisorry/article/details/47008981 是什么 VirtualEnv用于在一台机器上创建多个独立的python运行环境,VirtualEnvWrapper为前者提供了一些便利的命令行上的封装. Virtualenv是一个非常好的virtual python environment builder,他最大的好处是,可以让每一个python项目单独使用一个环境,而不会影响python系统环境,也不会影响其他项目的环境. Virt

Python Virtualenv 虚拟环境

在python2和python3共存的机器上做开发,要想互不干扰,虚拟环境很重要. Debian7 默认是python2.7.3,装好python3.4.1后怎么建立虚拟环境呢? $ pyvenv myVenv $ source myVenv/bin/activate 然后就可以在虚拟环境中安装程序了.如: $ pip install pymongo 退出虚拟环境: $ deactivate 注意python3自带了pyvenv,用这个就行,以前的 virtualenv myVenv --pyt

Python的虚拟环境virtualenv

原文地址:blog.sina.com.cn/s/blog_4ddef8f80101eu0w.html Python的虚拟环境可以使一个Python程序拥有独立的库library和解释器interpreter,而不用与其他Python程序共享统一个library和interpreter.虚拟环境的好处是避免了不同Python程序间的互相影响(共同使用global library 和 interpreter),例如程序A需要某个库的1.0版本,而程序B需要同样这个库的2.0版本,如果程序B执行则A就

Mac 安装虚拟环境 python virtualenv virtualenvwrapper

第1步 ,安装virtualenv和virtualenvwrapper 运行命令如下: pip3 install -i https://mirrors.aliyun.com/pypi/simple virtualenv pip3 install -i https://mirrors.aliyun.com/pypi/simple virtualenvwrapper 第2步,创建环境 这里我将虚拟环境安装在/Documents(文稿)文件夹内, (因为默认在用户根目录) cd Documents #

python virtualenv 安装运行saltstack

需求产生场景: 1.python的virtualenv虚拟环境非常的好用. 2.saltstack作为运维自动化的一个重要组件也挺好用的. 但是: 1.saltsatck最简便的是使用yum安装,结合的是linux-centos自带的python2.6版本. 2.即便使用编译安装,也是在编译安装的python环境下 so,需求产生了: 我想要在virtualenv环境下使用saltstack的api,发现非常蛋疼.两者无法整合到一起. 为了解决这个痛点,用了半个下午的时间,参考saltstack

Python 安装虚拟环境

写在前面: 安装指南是在 Ubuntu 下面操作的.不同的 Linux 版本,安装指令不同.所以,该指南的某些指令对于像 CentOS 等非 Ubuntu 系统不适用. 为什么需要使用虚拟环境? 虚拟环境是一个将不同项目所需求的依赖分别放在独立的地方的一个工具,它给这些工程创建虚拟的Python环境.它解决了"项目X依赖于版本1.x,而项目Y需要项目4.x"的两难问题,而且使你的全局site-packages目录保持干净和可管理. 安装 virtualenv: 首先,需要安装 setu

(一) virtualenv虚拟环境安装

一.在ubuntu环境中用apt安装virtualenv虚拟环境 apt-get -y install python-virtualenv 二.或者用PIP安装virtualenv sudo apt install python-pip pip install virtualenv 创建一个目录用于存放虚拟环境 mkdir /home/py3Envs cd /home/py3Envs 创建一个虚拟环境 [email protected]:/home/py3Envs# virtualenv ven

windows下搭建virtualenv虚拟环境

操作系统:windows7 旗舰版 64bit pip install django==1.9.1pip install virtualenv 虚拟环境工具>pip install virtualenv==15.0.1 创建虚拟环境virtualenv django_basic_venv执行activate命令激活e:\Workspace\venv>django_basic_venv\Scripts\activate虚拟环境下安装django:pip install django==1.9.5

python入门系列:Python使用虚拟环境

虚拟环境 背景 有两个项目,A和B.都依赖一个模块m,但是他们所需要的版本不一样.默认的情况是,只能安装一个版本的模块m.所以一台电脑上,两个项目无法同时运行. 解决方案 创建一个独立的局部python环境,在这个环境中,安装相关的库,如果有多个项目,则创建多个局部环境.平行宇宙即视感. 虚拟环境准备 想要创建平行宇宙,还得依赖一个三方包:virtualenv安装命令:pip install virtualenv使用虚拟环境 创建一个虚拟环境 使用命令:virtualenv dirname,也可