一.使用虚拟环境的原因

在使用 Python 开发的过程中,工程一多,难免会碰到不同的工程依赖不同版本的库的问题;亦或者是在开发过程中不想让物理环境里充斥各种各样的库,引发未来的依赖灾难。此时,我们需要对于不同的工程使用不同的虚拟环境来保持开发环境以及宿主环境的清洁。这里,就要使用 virtualenv与virtualenvwrapper来解决这个问题,一个可以帮助我们管理不同 Python 环境的绝好工具。virtualenv 可以在系统中建立多个不同并且相互不干扰的虚拟环境。

二.virtualenv安装与使用

1.安装virtualenv

#指定清华源下载pip的包(-i 后面为清华源)

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenv

#也可以直接使用命令

pip3 install virtualenv

#(如果提示pip版本太旧可以使用)升级pip工具

pip3 install --upgrade pip

2.virtualenv使用方法

(1)创建目录

mkdir Myproject

cd Myproject

(2) 创建独立运行环境-命名

virtualenv --python=/usr/bin/python3 demo1

#得到独立第三方包的环境,并且指定解释器是python3

(3)进入虚拟环境

source  activate

#此时进入虚拟环境(venv)Myproject

4.安装第三方包

(venv)Myproject: pip3 install django==2.2

#此时pip的包都会安装到venv环境下,venv是针对Myproject创建的

5.退出venv环境

deactivate命令

6.

virtualenv是如何创建“独立”的Python运行环境的呢?原理很简单,就是把系统Python复制一份到virtualenv的环境,用命令source activate进入一个virtualenv环境时,virtualenv会修改相关环境变量,让命令python和pip均指向当前的virtualenv环境。

7.安装最简单的django项目

# mysite2为项目名

django-admin startproject mysite2

python3 manage.py startapp app01 #app01为app名称
修改下settings.py
ALLOWED_HOSTS = ["*"]

# centos7需要开启web端口
firewall-cmd --permanent --add-port=8000/tcp
firewall-cmd --reload

python manage.py runserver 0.0.0.0:8000

三.virtualenvwrapper安装与使用(推荐)

virtualenv 的一个最大的缺点就是:

每次开启虚拟环境之前要去虚拟环境所在目录下的 bin 目录下 source 一下 activate,这就需要我们记住每个虚拟环境所在的目录。

一种可行的解决方案是,将所有的虚拟环境目录全都集中起,并且针对不同的目录做不同的事。

使用virtualenvwrapper管理你的虚拟环境(virtualenv),其实他就是统一管理虚拟环境的目录,并且省去了source的步骤。

1.安装virtualenvwrapper

# 安装

pip3 install virtualenvwrapper

# 配置全局变量

[root@hsz Myproject]# find / -name virtualenvwrapper.sh

find: ‘/proc/70508’: No such file or directory

/usr/local/python3/bin/virtualenvwrapper.sh

[root@hsz Myproject]# vi ~/.bashrc

# 添加内容

# 虚拟环境的保存目录

WORKON_HOME=~/Envs

VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3

export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages'

source /usr/local/python3/bin/virtualenvwrapper.sh

# 使之生效

source ~/.bashrc

也可以:
vi ~/.bash_profile
写入以下几行代码(export可以先去掉)
export WORKON_HOME=~/Envs # 设置virtualenv的统一管理目录, 以后自动下载的虚拟环境,全部都放在这
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages' # 添加virtualenvwrapper的参数,生成干净隔绝的环境
export VIRTUALENVWRAPPER_PYTHON=/opt/python347/bin/python3 # 指定python解释器的本体(注意此路径随不同的linux环境改变而改变)
source /opt/python34/bin/virtualenvwrapper.sh # 执行virtualenvwrapper安装脚本

2.使用virtualenvwrapper创建项目

# 创建虚拟环境demo3

# 如果使用: mkvirtualenv demo3 -p python3  (使用相应的python版本)

[root@hsz Myproject]# mkvirtualenv demo3

Using base prefix '/usr/local/python3'

New python executable in /root/Envs/demo3/bin/python3.6

Also creating executable in /root/Envs/demo3/bin/python

Installing setuptools, pip, wheel...

done.

# 查看有哪些虚拟环境

(demo3) [root@hsz Myproject]# workon

demo3

# 进入demo3虚拟环境

(demo3) [root@hsz Myproject]# workon demo3

(demo3) [root@hsz Myproject]# ls

demo1  demo2  mysite

# 安装django == 后面表示版本

(demo3) [root@hsz]#  pip3 install django==2.2

# 创建django项目

(demo3) [root@hsz Myproject]# django-admin startproject mysite3

(demo3) [root@hsz Myproject]# ls

demo1  demo2  mysite  mysite3

# mysite3 下的 mysite3 修改settings.py的配置,在[]  加”*”

ALLOWED_HOSTS = ["*"]

# 运行django 成功

python manage.py runserver 0.0.0.0:8000

# 注意centos7 需要开启web端口,步骤如下

firewall-cmd --permanent --add-port=8000/tcp

firewall-cmd --reload

# 或者直接关闭firewall

## 关闭命令

systemctl stop firewalld

## 查看firewall状态

systemctl status firewalld

Centos7虚拟环境virtualenv与virtualenvwrapper的安装及基本使用的更多相关文章

  1. python虚拟环境--virtualenv和virtualenvwrapper

    python虚拟环境--virtualenv和virtualenvwrapper http://www.cnblogs.com/technologylife/p/6635631.html https: ...

  2. virtualenv和virtualenvwrapper pipenv安装

    virtualenv和virtualenvwrapper pipenv安装 virtualenvwrapper工具 virtualenvwrapper是用来管理virtualenv的扩展包,用着很方便 ...

  3. Centos7 python虚拟环境virtualenv和virtualenvwrapper简单介绍

    我的系统版本是 [root@localhost ~]# cat /etc/os-release 我的Python版本是 [root@localhost ~]# python3 -V 关于如何安装Pyt ...

  4. 虚拟环境virtualenv和virtualenvwrapper(转)

    virtualenv是用来创建一个独立的Python虚拟环境的工具,通过virtualenv可以创建一个拥有独立的python版本和安装库的虚拟开发环境.这样一来我们就可以在虚拟环境中安装各种各种所需 ...

  5. os系统安装Python虚拟环境virtualenv和virtualenvwrapper

    一.安装Python 上节已经讲了如何安装Python2和Python3 二.给Python3安装virtualenv 在终端输入:sudo pip3 install virtualenv 等待安装成 ...

  6. virtualenv和virtualenvwrapper的安装与使用

    环境 Windows 10 python 3.6.7 virtualenv 安装 virtualenv用于创建虚拟环境,用于隔离不同的python版本的运行,是容器类软件.这里在Windows下通过p ...

  7. virtualenv以及virtualenvwrapper的安装和使用

    Virtualenv 安装 安装前最好保证pip为最新版本: python -m pip install -U pippip install virtualenv 创建新的环境 virtualenv ...

  8. python虚拟环境的使用---virtualenv and virtualenvwrapper

    虚拟环境 virtualenv 常用操作 step1: 安装 : pip install virtualenv step2:新建 : virtualenv venv cd venv activate ...

  9. virtualenv,virtualenvwrapper安装及使用

    1.安装 # 安装: (sudo) pip install virtualenv virtualenvwrapper # centos7下 pip install virtualenv virtual ...

随机推荐

  1. Abp.Core运行时提示XX没有实现,或者没有依赖注入的问题,或者调试时提示做出更改的问题

    因为abp的web层对application层有项目引用,但是对domain层并不存在项目引用,而是bin目录下直接引用的dll文件,所以当domain层修改后不会自动将dll文件同步过去.所以有时候 ...

  2. c语言thread用法记录。

    https://blog.csdn.net/hitwengqi/article/details/8015646 先是c++11之前的 1.最基础,进程同时创建5个线程,各自调用同一个函数 #inclu ...

  3. git之路

    1.如何clone代码到本地 答:git clone https://github.com/antirez/redis.git 2.

  4. 数据库程序接口——JDBC——API解读第一篇——建立连接的核心对象

    结构图 核心对象 Driver Java通过Driver接口表示驱动,每种类型的数据库通过实现Driver接口提供自己的Driver实现类. Driver由属性,操作,事件三部分组成. 属性 公共属性 ...

  5. Linux - Shell - 在多个文件中查找关键字

    1. 概述 在多个文件中 查找内容 2. 想干啥 目的 在 多个文件 中, 查找内容 准备 之前在 单个文件里 查找过内容 工具 awk 前提 文件有固定格式 查找时有字段的要求 例子 # print ...

  6. kali Linux 2020.1最新安装教程,亲身尝试,绝对能帮你安装好!不是root、没有桌面、中文乱码、下载太慢、ssh链接等问题!

    既然已经开始研究kali Linux,小编就认为在下已经有了一定的基础.当然小编也是个小白用户.本人用的是Vmware虚拟机,这里只说一点,内存我选择的是4g因为这个包含桌面,所以稍微大一点.Linx ...

  7. 微信支付之H5支付

    HoJe男孩子你要加油阿 前言准备材料H5支付请求的参数返回结果统一下单回调接口用到的工具类886 . 前言 大家好,分享是快乐的,也见证了个人成长历程,文章大多都是工作经验总结以及平时学习积累,基于 ...

  8. 解决linux乱码问题

    echo "LANG="zh_CN.UTF-8" >> /etc/sysconfig/i18n yum -y install kde-l10n-Chinese ...

  9. 1010 Radix

    1010 Radix 注意点 如111 1 1 10类似情况下,若n为个位数,如果本身比另一个数小,则多少的进制都是没有用的(可能会造成空循环而超时),不过好像没有这么一个测试用例 进制应该比最少数据 ...

  10. BugReport-智慧农业APP

    1.展示的界面显示不全 bug Description: 测试环境:win10.工具eclipse: 测试步骤:打开运行程序后模拟器启动,第一个界面显示过几秒跳到了另一个界面,问题是第一个界面显示不全 ...