Flask入门

Posted 逍遥子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flask入门相关的知识,希望对你有一定的参考价值。

学习文章:http://www.pythondoc.com/flask-restful/first.html

http://www.cnblogs.com/Xrinehart/p/3506467.html

在C:\\flask>目录下,新建一个app.py文件

#!flask/bin/python
from flask import Flask, jsonify
from flask import abort
app = Flask(__name__)

tasks = [
    {
        \'id\': 1,
        \'title\': u\'Buy groceries\',
        \'description\': u\'Milk, Cheese, Pizza, Fruit, Tylenol\',
        \'done\': False
    },
    {
        \'id\': 2,
        \'title\': u\'Learn Python\',
        \'description\': u\'Need to find a good Python tutorial on the web\',
        \'done\': False
    }
]

@app.route(\'/todo/api/v1.0/tasks\', methods=[\'GET\'])
def get_tasks():
    return jsonify({\'tasks\': tasks})

@app.route(\'/todo/api/v1.0/tasks/<int:task_id>\', methods=[\'GET\'])
def get_task(task_id):
    task = list(filter(lambda t: t[\'id\'] == task_id, tasks))
	#对tasks列表中的选项依次执行函数lambda t: t[\'id\'] == task_id,将执行结果为True(!=0)的选项组成一个List/String/Tuple(取决于sequence的类型)返回,False则退出(0),进行过滤。
    if len(task) == 0:
        abort(404)
    return jsonify({\'task\': task[0]})
	
if __name__ == \'__main__\':
    app.run(debug=True)

C:\\flask>python app.py

执行结果

注意原文有段代码是:

task = filter(lambda t: t[\'id\'] == task_id, tasks)

运行时会报TypeError: object of type \'filter\' has no len()

需要强转filter的返回类型为list类型
task = list(filter(lambda t: t[\'id\'] == task_id, tasks))

 

以上是关于Flask入门的主要内容,如果未能解决你的问题,请参考以下文章

python Flask - 数据库片段

Flask从入门到精通之flask程序入门

分享《Flask Web开发实战:入门进阶与原理解析》PDF+源代码

Flask 快速入门

《Flask Web开发实战:入门进阶与原理解析》PDF+源代码

Flask框架从入门到精通之模板宏(十九)