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界面

相关推荐
海棠AI实验室16 分钟前
第四章 项目目录结构:src/、configs/、data/、tests/ 的黄金布局
python·项目目录结构
左直拳1 小时前
将c++程序部署到docker
开发语言·c++·docker
爱笑的眼睛111 小时前
超越可视化:降维算法组件的深度解析与工程实践
java·人工智能·python·ai
崇山峻岭之间1 小时前
Matlab学习记录31
开发语言·学习·matlab
清铎2 小时前
leetcode_day12_滑动窗口_《绝境求生》
python·算法·leetcode·动态规划
ai_top_trends2 小时前
2026 年工作计划 PPT 横评:AI 自动生成的优劣分析
人工智能·python·powerpoint
你怎么知道我是队长2 小时前
C语言---输入和输出
c语言·开发语言
mmz12072 小时前
二分查找(c++)
开发语言·c++·算法
TDengine (老段)2 小时前
TDengine Python 连接器进阶指南
大数据·数据库·python·物联网·时序数据库·tdengine·涛思数据
你怎么知道我是队长2 小时前
C语言---文件读写
java·c语言·开发语言