Python武器库开发-flask篇之flask框架的安装(二十一)

Flask介绍

Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理,然后触发Flask框架,开发人员基于Flask框架提供的功能对请求进行相应的处理,并返回给用户,如果要返回给用户复杂的内容时,需要借助jinja2模板来实现对模板的处理,即:将模板和数据进行渲染,将渲染后的字符串返回给用户浏览器。

"微"(micro) 并不表示你需要把整个 Web 应用塞进单个 Python 文件(虽然确实可以 ),也不意味着 Flask 在功能上有所欠缺。微框架中的"微"意味着 Flask 旨在保持核心简单而易于扩展。Flask 不会替你做出太多决策------比如使用何种数据库。而那些 Flask 所选择的------比如使用何种模板引擎------则很容易替换。除此之外的一切都由可由你掌握。如此,Flask 可以与您珠联璧合。

默认情况下,Flask 不包含数据库抽象层、表单验证,或是其它任何已有多种库可以胜任的功能。然而,Flask 支持用扩展来给应用添加这些功能,如同是 Flask 本身实现的一样。众多的扩展提供了数据库集成、表单验证、上传处理、各种各样的开放认证技术等功能。Flask 也许是"微小"的,但它已准备好在需求繁杂的生产环境中投入使用。

pipenv虚拟环境的安装

Python的虚拟环境是在Python基础环境上虚拟出的一个工作环境,目的是防止基础环境被污染,便于项目对包的管理。我们使用以下的命令便可以安装pipenv虚拟环境

python 复制代码
apt install pipenv

我们可以运行以下的代码,如果出现下图所示的场景,则代表虚拟场景已经安装好了

python 复制代码
pipenv --version

创建一个虚拟环境

现在我们已经安装好了一个pipenv虚拟环境,接下来我们需要去创建一个虚拟环境,执行如下的命令创建文件夹进入后创建虚拟环境

python 复制代码
#创建文件夹
mkdir flask
#创建目录
cd flask
#创建虚拟环境
pipenv shell 

现在我们所处的位置就是一个和外界隔离开来的虚拟环境,我们可以通过以下的命令来查看当前的文件夹有哪些文件

python 复制代码
ls

此时我们通过ls命令去查看,会发现当前文件夹下会出现一个Pipfile的文件,这个文件里记录了当前副本的一些基本情况

我们可以通过以下的命令查看当前副本的一些基本情况

python 复制代码
cat Pipfile

安装flask

现在我们执行以下的命令在虚拟环境中安装flask

python 复制代码
pipenv install flask

现在我们已经成功在虚拟环境中安装了flask框架

第一个应用的开发

接下来通过简单的代码教会大家使用flask框架开发第一个简单的应用,现在我们在上文中所搭建的虚拟环境下执行以下的代码,编辑脚本文件

bash 复制代码
vim app.py

进入编辑页面后,我们写入如下的代码:

python 复制代码
#!/usr/bin/env python3

from flask import Flask

#初始化 
app = Flask(__name__)
#路由
@app.route('/')
def index():
    return 'Hello World!'

if __name__ == '__main__':
    app.run()

然后退出保存即可

接下来输入如下代码运行该脚本文件

python 复制代码
python3 app.py

接下来我们只需要通过任意的浏览器输入 http://127.0.0.1:5000 这个URL,便可以访问这个程序的Web界面

相关推荐
随心点儿17 分钟前
使用python 将多个docx文件合并为一个word
开发语言·python·多个word合并为一个
不学无术の码农20 分钟前
《Effective Python》第十三章 测试与调试——使用 Mock 测试具有复杂依赖的代码
开发语言·python
tomcsdn3126 分钟前
SMTPman,smtp的端口号是多少全面解析配置
服务器·开发语言·php·smtp·邮件营销·域名邮箱·邮件服务器
sleepybear111327 分钟前
在Ubuntu上从零开始编译并运行Home Assistant源码并集成HACS与小米开源的Ha Xiaomi Home
python·智能家居·小米·home assistant·米家·ha xiaomi home
EnigmaCoder31 分钟前
Java多线程:核心技术与实战指南
java·开发语言
纪伊路上盛名在32 分钟前
(鱼书)深度学习入门1:python入门
人工智能·python·深度学习
夏末蝉未鸣011 小时前
python transformers笔记(TrainingArguments类)
python·自然语言处理·transformer
德育处主任Pro1 小时前
「py数据分析」04如何将 Python 爬取的数据保存为 CSV 文件
数据库·python·数据分析
咸鱼鲸1 小时前
【PyTorch】PyTorch中数据准备工作(AI生成)
人工智能·pytorch·python
遇见你很高兴1 小时前
Pycharm中体验通义灵码来AI辅助编程
python