1 什么是flask

  Flask是一个使用 Python 编写的轻量级 Web 应用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 。

  百度百科:点击前往

  中文文档:点击前往

2 利用pip安装flask模块

  2.1 前提

    安装好python、配置好环境变量

  2.2 查看python版本

    

  2.3 查看已经安装好的模块

    

  2.4 利用pip安装flash模块

    注意:为了速度更快建议将pip的源换成豆瓣的

    pip3 install -i https://pypi.doubanio.com/simple/ flask

3 创建Flask应用的步骤

  3.1 创建一个后缀为 py 的文件

    

  3.2 从flask模块中导入Flash类

    from flask import Flask

  3.3 利用Flask类创建一个Flask实例

    app = Flask(__name__)

  3.4 定义一个测试方法,用来项前端传送数据

    def test(): 
      return "Hello Fury"

  3.5 指定路径和方法的匹配规则(有点类似java中springMVC的请求分发)

    app.add_url_rule('/', view_func=test)

      解释:根路径对应test方法(即:前端发送的请求路径是根路径时后台就执行test方法)

    注意:后台向前端发送的数据一般都是字符串的

  3.6 运行后台

    app.run()

  3.7 完整代码

from flask import Flask

app = Flask(__name__)

def test():
return "Hello Fury" app.add_url_rule('/', view_func=test) app.run()

myTest.py

  3.8 利用python自带的IDLE打开myTest.py,然后运行

    

  3.9 通过浏览器访问 http://localhost:5000/ 的效果如下

    

    查看源代码为

      

      注意:在源代码中没有发现任何html标签,由此说明后台传过来的都是字符串;如果想要出现html标签可以直接将html标签写到后台的字字符串中然后传过来

        

4 利用pyCharm(专业版)创建一个简单的flash应用

  4.1 pyCharm(专业版)安装包:

    链接:http://pan.baidu.com/s/1jI5lnYQ 密码:osl8

  4.2 pyCharm(专业版)注册码教程

    点击前往

  4.3 创建flash应用

    

    创建成功后的效果

      

5 利用装饰器来匹配路径和执行方法 

@app.route('/')
def test():
return "Hello Fury"
 
代码解释:浏览器发送的请求路径时根路径时就执行test方法(类似于java中springMVC中利用注解实现请求分发) 上面的代码时下面三行代码的进化版本
def test():
return "Hello Fury"
app.add_url_rule('/', view_func=test)   完整代码如下

  

6 app.route('路径')  剖析

  6.1 装饰器

    装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。

  6.2 flash对象的route方法的返回值

    这个返回值时一个装饰器(即:app.route不是装饰器,app.route执行后的放回值是装饰器【app.route()是装饰器】)

    

7 app.run() 剖析

  7.1 Flash对象的run方法有三个默认参数

    

      注意:其实这三个默认参数是flash应用的配置项

    7.1.1 host

      

      用来指定监听的IP地址,如果是127.0.0.1表示只能本机访问,如果是0.0.0.0表示所有机器都能访问;默认是127.0.0.1

    7.1.2 post

      

      用来指定请求端口;默认值是5000

    7.1.3 debug

      

      用来指定是否开启调试模式;默认值是false

        如果开启调试模式,pyCharm会在我们修改了代码后自动重新运行应用;如果出现错误会在客户端显示错误信息

8 app.config 剖析

  Flash对象的config属性其实是一个字典(查看源码就能看出来)

    

  8.1 利用字典的方法更新Flash对象的config属性

    

  8.2 利用app.config对象提供的方法来修改config的value值

9 本博客知识点

from flask import Flask
Flask
app = Flask(__name__)
app.run(host=主机, port=端口, debug=True)
app.add_url_rule('规则', view_func=函数) app.config --> Config类的实例 --> dict子类 dict --> update [key]=value
Config --> from_pyfile from_object from_json app.route 它不是个装饰起 mydec = app.route('路径') @mydec
def func():
return 'This is a view' 作业练习:
1. 自己绑定一个函数到一个路径上(不能是根路径)
2. 开启debug模式
3. 用from_pyfile加载开启debug模式,并输出app.config

知识点

10 三少需要复习的知识点

  sqlalchemy

  python异常

  json、ajax

  python基础知识

  2017年9月3日01:45:54

												

Flask01 初识flask、flask配置的更多相关文章

  1. Flask01 初识flask、创建flask应用、flask启动配置

    1 什么是flask Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 . 百度百科:点击前往 中文文档: ...

  2. Flask对象配置

    Flask的配置就是在 app.config 中添加一个键值对,但是你存进去的键必须是config中应该存在的,如果不再存在的话,它会默认无用,就这么放着 config中有用的key { 'DEBUG ...

  3. flask的配置设置的几种方式

     Flask的配置对象(config)是一个字典(dict)的子类(subclass),所以你可以把配置用键值对的方式存储进去. 1.一些重要的配置,可以设置在系统环境变量里,又或者放到某个服务器里, ...

  4. flask 开发配置

    flask 开发配置 一:在虚拟机里面安装ubuntu系统.略 二: apt install python3-pip #安装pip, pip3 install --upgrade pip 三: pip ...

  5. 第七篇 Flask实例化配置及Flask对象配置

    一.Flask对象的配置 Flask 是一个非常灵活且短小精干的web框架 , 那么灵活性从什么地方体现呢? 有一个神奇的东西叫 Flask配置 , 这个东西怎么用呢? 它能给我们带来怎么样的方便呢? ...

  6. python三大web框架Django,Flask,Flask,Python几种主流框架,13个Python web框架比较,2018年Python web五大主流框架

    Python几种主流框架 从GitHub中整理出的15个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. Django: Python We ...

  7. day92:flask:flask简介&基本运行&路由&HTTP请求和响应

    目录 1.Flask简介 2.关于使用flask之前的准备 3.flask的基本运行 4.flask加载配置 5.传递路由参数(没有限定类型) 6.传递路由参数(通过路由转换器限定路由参数的类型) 7 ...

  8. Inside Flask - flask 扩展加载过程

    Inside Flask - flask 扩展加载过程 flask 扩展(插件)通常是以 flask_<扩展名字> 为扩展的 python 包名,而使用时,可用 import flask. ...

  9. Inside Flask - flask.__init__.py 和核心组件

    Inside Flask - flask.__init__.py 和核心组件 简单的示例 首先看看一个简单的示例.使用 Flask ,通常是从 flask 模块导入 Flask . request 等 ...

随机推荐

  1. 最短路径之Dijkstra算法和Floyd-Warshall算法

    最短路径算法 最短路径算法通常用在寻找图中任意两个结点之间的最短路径或者是求全局最短路径,像是包括Dijkstra.A*.Bellman-Ford.SPFA(Bellman-Ford的改进版本).Fl ...

  2. (转)示例化讲解RIP路由更新机制

      目录(?)[+]   以下内容摘自最新上市的“四大金刚”图书之一<Cisco路由器配置与管理完全手册>(第二版)(其它三本分别为<Cisco交换机配置与管理完全手册>(第二 ...

  3. (转)xml

    1  XML理论回顾 1.1 XML概述 1.XML是可扩展标记语言.是由W3C指定并维护的,目前最新的版本是1.0 2.XML作用: 2.1传输数据,它是一种通用的数据交换格式 2.2配置文件. 1 ...

  4. Accord.NET_Naive Bayes Classifier

    我们这个系列主要为了了解并会使用Accord.NET中机器学习有关算法,因此主要关注的是算法针对的的问题,算法的使用.所以主要以代码为主,通过代码来学习,在脑海中形成一个轮廓.下面就言归正传,开始贝叶 ...

  5. 【性能】web提升性能的小总结

    1. 异步加载js文件,判断文件是否已加载,不重复加载 if (typeof echarts === 'undefined') { console.log('异步加载echarts'); $.getS ...

  6. shell 脚本编写 if else then

    if ....; then .... elif ....; then .... else .... fi 大多数情况下,可以使用测试命令来对条件进行测试.比如可以比较字符串.判断文件是否存在及是否可读 ...

  7. ubuntu中vim下按上下左右键时输入A、B、C、D的问题

    ubuntu下使用vi 进行编辑文件时,按上下左右键时,会输入A.B.C.D,这个用起来很不方便.网上查得此问题的原因是: ubuntu系统自带的 vi 不完整导致,解决方法:安装完整的vi $ su ...

  8. npm的package.json字段含义中文文档

    简介 本文档有所有package.json中必要的配置.它必须是真正的json,而不是js对象. 本文档中描述的很多行为都受npm-config(7)的影响. 默认值 npm会根据包内容设置一些默认值 ...

  9. 4. leetcode 461. Hamming Distance

    The Hamming distance between two integers is the number of positions at which the corresponding bits ...

  10. Python Socket 简单聊天室1

    这是第一版,最简单的,仅仅实现了通信,你收我发,我收你发而已.下篇将介绍,基于异步多线程的聊天室: 客户端: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 ...