Python基础教程连载地址:大家点击阅读原文链接也可学习哈。
https://mp.weixin.qq.com/mp/appmsgalbum?__biz=Mzg3MjU2NzkyMA==&action=getalbum&album_id=1776320890310295553#wechat_redirect
昨天给大家简单介绍了一些 python web相关的概念和创建虚拟环境等
为我们后续学习Flask先打好基础
今天我们正式进入到Flask框架的学习
下载并安装Flask框架
Flask依赖两个外部库,Wekzeug和Jinja2
Wekzeug是一个WSGI工具集,Jinja2负责渲染模板
所以在安装Flask的时候会自动安装这两个库
为了更高的管理Python应用,我们就在虚拟环境下安装Flask
pip install flask
安装完成之后可以使用如下命令查看所有的安装包
pip list
从上图可以看到,已经成功的安装上了Flask,当前最新版本为2.0.1
并且也成功的安装上了3.0.1的Jinja2和2.0.1的Wekzeug
切换虚拟环境
1. File→settings
2. 在设置弹窗中选择Project Interpreter,然后点击add;
3. 在弹窗中,选择Existing environment,如下设置即可
Flask基础
第一个Flask应用
准备就绪之后,从我们的'Hello,Flask'开始
from flask import Flask # 实例化flask对象 app = Flask(__name__) @app.route('/') def Hello(): return '你好, Flask' if __name__ == '__main__': app.run()
打印信息如下:
按照提示我们去访问'http://127.0.0.1:5000/'
成功在浏览器页面上打印出了我们输入的信息
那么这段代码做了什么?为什么能在浏览器显示我们输入的信息呢?
第一行:导入Flask类
第四行:创建Flask类的实例,参数是应用程序或者包的名称,如果使用的是单一的模块,那么就使用的是'__name__'
这样Flask材质去哪里找对应文件或者静态模板等
第六行:使用route装饰器告诉Flask什么样的URL才能触发被执行装饰的函数
7-8行:视图函数,也就是浏览器显示的信息
10-11行,run()函数让应用运行在本地服务器上
现在捋清了吗?
开启调式模式
虽然run()方法用于开启本地开发服务器,但是每次修改代码之后都要手动重启它,此时就可以使用Flask调试模式解决
两种方式开启调式模式
app.debug = True app.run
方法二还可以指定能够访问端口号
app.run( debug = True, port = 8888 )
再次启动服务后,在浏览器输入http://127.0.0.1:8888/
再次更改信息后也无须重启,直接页面刷新即可
路由
当客户端把请求发送给web服务器后,web服务器再把请求发送给Flask程序.
程序实例需要知道每个URL请求运行了那些代码,所以保存了一个URL到Python程序的映射关系
处理URL和程序之间关系的程序称之为路由
在Flask中定义路由最简单的方式就是使用程序提供的app.route装饰器
把装饰的函数注册为路由
来看看如何使用装饰器声明路由
@app.route('/') def Hello(): return 'Hello, Flask!'
装饰器是Python语言的标准特性,可以使用不同的方式修改函数的行为,
常用方法是使用装饰器把函数注册为事件的处理程序.
这一期内容就先到这里,
下一期我们看看变化的URL在Flask中如何定义和使用