virtualenv介绍

OnTheWay! OnTheWay!     2022-08-26     319

关键词:

背景说明

本项目是基于《深入理解flask》一书,主要是用来记录学习历程和交流心得,所以写得不好请大神勿喷。

 

准备工作


 virtualenv介绍

也许 Virtualenv 是你在开发中最愿意使用的,如果你在生产机器上有 shell 权限的时候,你也会愿意用上 virtualenv。

virtualenv 解决了什么问题?如果你像我一样喜欢 Python 的话,有很多机会在基于 Flask 的 web 应用外的其它项目上使用 Python。 然而项目越多,越有可能在不同版本的 python,或者至少在不同 python 库的版本上工作。 我们需要面对这样的事实:库破坏向后兼容性的情况相当常见,而且零依赖的正式应用也不大可能存在。 如此,当你的项目中的两个或更多出现依赖性冲突,你会怎么做?

Virtualenv 的出现解决这一切!Virtualenv 能够允许多个不同版本的 Python 安装,每一个服务于各自的项目。 它实际上并没有安装独立的 Python 副本,只是提供了一种方式使得环境保持独立。

---摘自flask官网

 virtualenv是一个独立的环境,它不会破坏你现有机器上的全局环境。--也称为沙盒环境

1、安装virtualenv

如果你在 Mac OS X 或 Linux下,用以下命令来安装:

sudo easy_install virtualenv或者sudo pip install virtualenv

一旦成功安装 virtualenv,运行 shell 创建自己的环境。我通常会创建一个项目文件夹,其下创建 venv 文件夹:

$ mkdir myproject
$ cd myproject
$ virtualenv venv
New python executable in venv/bin/python
Installing distribute............done.

查看这条命令干了什么事情:它将本机的python开发环境拷贝了一份,甚至包括pip。

# tree venv/ -L 2
venv/
├── bin
│   ├── activate
│   ├── activate.csh
│   ├── activate.fish
│   ├── activate_this.py
│   ├── alembic
│   ├── easy_install
│   ├── easy_install-2.6
│   ├── gunicorn
│   ├── gunicorn_django
│   ├── gunicorn_paster
│   ├── mako-render
│   ├── pip
│   ├── pip2
│   ├── pip2.6
│   ├── python
│   ├── python2 -> python
│   ├── python2.6 -> python
│   ├── python-config
│   ├── uwsgi
│   └── wheel
├── include
│   └── python2.6 -> /usr/include/python2.6
├── lib
│   └── python2.6
├── lib64 -> lib
└── pip-selfcheck.json

6 directories, 21 files

2、激活环境

现在,只要你想要在某个项目上工作,只要激活相应的环境。在 OS X 和 Linux 下,使用如下命令:

$ . venv/bin/activate或者$source venv/bin/activate

如果你是个 Windows 用户,使用如下命令:

$ venv\scripts\activate
激活后,shell如下:
(venv)# 
#退出沙盒换回全局python环境
(venv)# deactivate 

#

3.安装flask

沙盒环境准备好了,现在我们正式开始体验flask,先安装flask:
(venv)# pip install Flask

4.一个栗子

一个最小的应用
from flask import Flask
app=Flask(__name__)
@app.route('/')
def hello_world():
    return 'Hello World!'

if__name__=='__main__':
    app.run(host=0.0.0.0)

那么这段代码做了什么?

    1. 首先我们导入了类 Flask 。这个类的实例化将会是我们的 WSGI 应用。第一个参数是应用模块的名称。 如果你使用的是单一的模块(就如本例),第一个参数应该使用 __name__。因为取决于如果它以单独应用启动或作为模块导入, 名称将会不同 ( '__main__' 对应于实际导入的名称)。
    2. 接着,我们创建一个该类的实例。我们传递给它模块或包的名称。这样 Flask 才会知道去哪里寻找模板、静态文件等等。
    3. 我们使用装饰器 route() 告诉 Flask 哪个 URL 才能触发我们的函数。
    4. 定义一个函数,该函数名也是用来给特定函数生成 URLs,并且返回我们想要显示在用户浏览器上的信息。
    5. 最后我们用函数 run(host='0.0.0.0') 启动本地服务器来运行我们的应用,这里使用0.0.0.0来监控本机任意IP,为了便于后面在浏览器上测试。默认侦听             localhost。
        if __name__ =='__main__': 确保服务器只会在该脚本被 Python 解释器直接执行的时候才会运行,而不是作为模块导入的时候。

        请按 control-C 来停止服务器。

最后,在浏览器上访问:http://yourip:5000

 

 

centos7python虚拟环境virtualenv和virtualenvwrapper简单介绍(代码片段)

我的系统版本是[[email protected]~]#cat/etc/os-release我的Python版本是[[email protected]~]#python3-V关于如何安装Python请看我的django环境搭建的博客https://www.cnblogs.com/caesar-id/p/10791791.html下面我们来开始搭建基于Python3.6.2版本的 查看详情

gitlab介绍gitlab的工作流程gitlab安装配置环境ansible配合virtualenv安装配置(代码片段)

一、GitLab主要服务构成     二、GitLab的工作流程      三、Gitlab安装配置管理环境使用centos7的环境配置1.提前准备工作1.关闭防火墙systemctlstopfirewalld禁用防火墙开机启动systemctldisablefirewalld2.... 查看详情

python虚拟环境管理之virtualenv和pipenv(代码片段)

...#xff0c;虚拟环境的数量都没有限制,我们可以轻松的用virtualenv或者pipenv等工具来创建多个虚拟环境。virtualenv的安装和应用࿰ 查看详情

【python入门】37.常用第三方模块之创建虚拟环境virtualenv

参考技术A摘要:virtualenv可创建独立的虚拟运行环境,解决了不同应用项目间多版本的不兼容问题。常用第三方模块virtualenv安装virtualenv创建虚拟环境使用virtualenv小结virtualenv用于创建Python的虚拟环境。当一个项目需要运行的版本... 查看详情

virtualenv系列·统一管理虚拟环境(代码片段)

...出虚拟环境4.激活虚拟环境5.退出虚拟环境6.删除虚拟环境virtualenv已经可以支持正常的Python项目开发了,在工程目录下创建伴随项目的虚拟环境子目录也挑不出毛病。大概是有不少开发者认为virtualenv的一些工作可以进一步封... 查看详情

快速上手深度学习掌握tensorflow模型构建与开发

...学习的背景,介绍tensorflow的背景,介绍课程python,numpy,virtualenv等前置学习内容,安装tensorflow1-1导学1-2课程安排1-3深度学习背景1-4tensorflow优势1-5开发环境1-6virtualenv简介1-7python常用操作1-8numpy常用操作011-9numpy常用操作021-10Mac下Te... 查看详情

windows下用pip安装tensorflow-cpu(不需要anaconda,virtualenv创建虚拟环境)(代码片段)

...da安装TF2.X.X太麻烦了,软件体积还大,因此打算用pip结合virtualenv直接安装并集成到jupyterlab。一、安装准备1.1环境要求:python3.5-3.7pip版本大于19virtualenv环境环境的检测:python--versionpip--versionvirtualenv--versiontensorflow官网上介绍还有... 查看详情

virtualenv使用

本文主要讲解Python中Virtualenv的使用,其中包括如下几个环节:Virtualenv是什么?Virtualenv的出现是为了解决什么问题?如何安装Virtualenv?如何使用Virtualenv?virtualenv是创建“独立”的Python运行环境的原理是什么呢?... 查看详情

使用 virtualenv / virtualenvwrapper 在特定目录中创建 virtualenv [重复]

】使用virtualenv/virtualenvwrapper在特定目录中创建virtualenv[重复]【英文标题】:Creatingavirtualenvinsideaspecificdirectorywithvirtualenv/virtualenvwrapper[duplicate]【发布时间】:2021-03-0813:55:10【问题描述】:有没有一种方法可以使用virtualenv/virtualenv... 查看详情

django 如何与 virtualenv 一起工作?

】django如何与virtualenv一起工作?【英文标题】:Howdoesdjangoworkwithvirtualenv?【发布时间】:2012-06-2202:38:41【问题描述】:我了解如何创建virtualenv,激活该virtualenv,然后在激活virtualenv时安装django。例如:virtualenv~/narniasource~/narnia/bin... 查看详情

windows使用virtualenv

安装virtualenvpipinstallvirtualenv指定python版本创建虚环境(在当前目录下生成wxy-virtualenv)virtualenv-pC:Python27python.exewxy-virtualenv 查看详情

virtualenv使用

安装$sudoaptinstallpython-virtualenv$sudo-Hpipinstallvirtualenv测试您的安装$virtualenv--version创建目录$mkdirmyproject&&cdmyproject创建虚拟环境安装好之后,我们就可以使用virtualenv命令创建Python虚拟环境了。这个命令有一个需要的参数:虚拟... 查看详情

未找到 Virtualenv 命令

】未找到Virtualenv命令【英文标题】:VirtualenvCommandNotFound【发布时间】:2015-09-1622:36:03【问题描述】:尽管进行了各种尝试,我还是无法让virtualenv工作。我在MACOSX上安装了virtualenv,使用:pipinstallvirtualenv并且还将PATH添加到我的.b... 查看详情

活动 virtualenv 不工作

】活动virtualenv不工作【英文标题】:Activevirtualenvisnotworking【发布时间】:2016-02-1504:17:57【问题描述】:我正在使用Python2.7.8和virtualenv12.0.7我激活了我的virtualenv并运行whichpip,但它仍然显示/usr/local/bin/pip。看起来我的virtualenv是活... 查看详情

sh使用pyenv-virtualenv强制virtualenv快速更改(代码片段)

查看详情

底层虚拟环境virtualenv(代码片段)

底层虚拟环境virtualenvvirtualenv说明virtualenv是一个创建独立的Python环境。virtualenv会创建一个文件夹,其中包含使用Python项目所有所需的可执行文件。它可以单独使用,用于代替Pipenv。virtualenv安装通过pip安装:#pipinstallvirtualenv测试下... 查看详情

virtualenv

0.安装pipinstallvirtualenv 1.创建新的环境virtualenv--no-site-packagesai 2.进入环境sourceai/bin/activate 3.退出当前环境deactivate  查看详情

apt-get virtualenv 和 pip virtualenv 有啥区别?

】apt-getvirtualenv和pipvirtualenv有啥区别?【英文标题】:What\'sthedifferencebetweenapt-getvirtualenvandpipvirtualenv?apt-getvirtualenv和pipvirtualenv有什么区别?【发布时间】:2016-04-2402:23:57【问题描述】:apt-get的virtualenv和pip的virtualenv有什么区别... 查看详情