下载python包管理工具Pip:

访问网址:https://pip.pypa.io/en/stable/installing/    下载文件get-pip.py到本地计算机

定位到get-pip.py所在的目录   运行命令:python get-pip.py即可安装pip   卸载命令:pip uninstall pip

定位到pip.exe所在目录(C:\Python27\Scripts)     运行命令:pip install flask即可安装flask

使用pip list命令可以查看已经安装好的python包

输出“Hello world”

flask官网:http://flask.pocoo.org/

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello_world():
return 'Hello World!' if __name__ == '__main__':
app.run()

改变路由

@app.route('/user')
def hello_user():
return 'Hello user!'

访问:http://127.0.0.1:5000/user   结果:Hello user!

改变请求方式

@app.route('/user',methods=['post'])
def hello_user():
return 'Hello user!'

访问:http://127.0.0.1:5000/user   结果:The method is not allowed for the requested URL.

传递参数

@app.route('/users/<id>')
def user_id(id):
return 'Hello user!'+id

访问:http://127.0.0.1:5000/users/34   结果:Hello user!34

首先引入  from flask import Flask,request
@app.route('/query_user')
def query_user():
id=request.args.get('id')
return 'query_user:'+id

访问:http://127.0.0.1:5000/query_user?id=4   结果:query_user:4

 反向路由

首先引入  from flask import Flask,request,url_for
@app.route('/query_url')
def query_url():
return 'query_url:'+url_for('query_user')

访问:http://127.0.0.1:5000/query_url  结果:query_url:/query_user

Jinja2模板引擎 

https://github.com/mitsuhiko

Welcome to Jinja2:http://jinja.pocoo.org/docs/dev/

1.传递参数

from flask import Flask,render_template
app = Flask(__name__)
@app.route('/')
def hello_world():
return render_template("Index.html",content="Hello")
if __name__ == '__main__':
app.run()

2.传递对象

#创建models
class User(object):
def __init__(self,user_id,user_name):
self.user_id=user_id
self.user_name=user_name
#创建模板
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<h1>hello {{ user.user_name }}</h1>
</head>
<body>
</body>
</html>
#自定义路由
from flask import Flask,render_template
from models import User
app = Flask(__name__) @app.route('/user')
def user_index():
user=User(1,"cnki")
return render_template("user_index.html",user=user)
if __name__ == '__main__':
app.run()

3.if判断

4.for循环 

<title>{% block title %}{% endblock %}</title>
<ul>
{% for user in users %}
<li><a href="{{ user.url }}">{{ user.username }}</a></li>
{% endfor %}
</ul>

5.模板继承

6.Flask 的消息提示与异常处理

Python之Flask Web开发的更多相关文章

  1. 《Flask Web开发——基于Python的Web应用开发实践》一字一句上机实践(上)

    目录 前言 第1章 安装 第2章 程序的基本结构 第3章 模板 第4章 Web表单 第5章 数据库 第6章 电子邮件 第7章 大型程序的结构   前言 学习Python也有一个半月时间了,学到现在感觉 ...

  2. 学习参考《Flask Web开发:基于Python的Web应用开发实战(第2版)》中文PDF+源代码

    在学习python Web开发时,我们会选择使用Django.flask等框架. 在学习flask时,推荐学习看看<Flask Web开发:基于Python的Web应用开发实战(第2版)> ...

  3. 《Flask Web开发实战:入门、进阶与原理解析(李辉著 )》PDF+源代码

    一句话评价: 这可能是市面上(包括国外出版的)你能找到最好的讲Flask的书了 下载:链接: https://pan.baidu.com/s/1ioEfLc7Hc15jFpC-DmEYBA 提取码: ...

  4. Flask Web开发读书笔记

    开篇:目前想自学Flask Web开发--基于Python,找了几本书准备啃啃,同时也会分享读书笔记.希望和大家一起进步. Flask是小型框架,可以算是微框架,但是他的功能还是比较多 Flask有三 ...

  5. Flask web开发 请求拦截和预处理

    我们在开发WEB应用时,往往会需要对所有的url请求进行拦截,做些预处理,比如权限处理.日志等统一处理. 本文介绍一下Flask中的处理机制.我们通过一个简单的例子来说明. 1.编写一个简单应用 ru ...

  6. Flask web开发 处理Session

    本文我们在上篇文章<Flask web开发  处理POST请求(登录案例)>的基础上,来讲述Flask对session的支持. 在上面案例上,我们需要修改和新增如下功能 1.登录成功后的 ...

  7. pycharm+python+Django之web开发环境的搭建(windows)

    转载:https://blog.csdn.net/yjx2323999451/article/details/53200243/ pycharm+python+Django之web开发环境的搭建(wi ...

  8. 使用eclipse搭建第一个python+Django的web开发实例

    python+Django的web开发实例   一.创建一个项目如果这是你第一次使用Django,那么你必须进行一些初始设置.也就是通过自动生成代码来建立一个Django项目--一个Django项目的 ...

  9. [flask/python/web] 解析flask web开发(Miguel著)一书第11章主页不显示博文表单的问题

    ---------------------------------------------以下内容2017.7.14更新---------------------------------------- ...

随机推荐

  1. html5—— 应用程序缓存

    使用 HTML5,通过创建 cache manifest 文件,可以轻松地创建 web 应用的离线版本. 什么是应用程序缓存(Application Cache)? HTML5 引入了应用程序缓存,这 ...

  2. Linux-服务排查

    root用户下,操作以下5步: 1.查网络,保证本机与对方互相通信 ifconfig ipconfig ping 2.查Linux的对应服务是否启动,使服务的status保持running状态 比如s ...

  3. NOIP2013Day1解题报告

    本来今天晚上拿13年NOIP的题目来做一下,测测能够得多少分,结果一晚上把Day1写完竟然AK了,吼吼吼 D1T1,题目:http://codevs.cn/problem/3285/ 很水的一道快速幂 ...

  4. Android基础总结(3)——UI界面布局

    Android的UI设计有好几种界面程序编写方式.大体上可分为两大类:一类是利用可视化工具来进行,允许你进行拖拽控件来进行布局:还有一类是编写xml文档来进行布局.这两种方法可以相互转换. 1.常见的 ...

  5. 多行文字垂直居中(完美兼容chrome firefox IE6 7 8 9)

    在说到这个问题的时候,也许有人会问CSS中不是有vertical-align属性来设置垂直居中的吗?即使是某些浏览器不支持我只需做少许的CSS Hack技术就可以啊!所以在这里我还要啰嗦两句,CSS中 ...

  6. 【MySQL】MySQL回滚工具

    1.mysqlbinlog把事务从binlog中导出 2.从导出的binlog中找到要回滚的事务,去掉第一个DML语句前和最后一个DML语句后与DML无关的binlog信息 3.在目录中新建一个tab ...

  7. python3.5在print和input上的几个变化

    1. 在python3.5中使用print,打印内容必须用括号()括起来.python2.7中可以不用括号,如果你加了括号,代码在python2.7中也是可以正常运行的. python3.5 exam ...

  8. hbase查询,scan详解

    一.shell 查询 hbase 查询相当简单,提供了get和scan两种方式,也不存在多表联合查询的问题.复杂查询需通过hive创建相应外部表,用sql语句自动生成mapreduce进行.但是这种简 ...

  9. Android IOS WebRTC 音视频开发总结(六一)-- 大数据解密国内实时通讯行业开发现状

    本文主要介绍国内实时通讯行业现状,文章最早发表在我们的微信公众号上,详见这里,欢迎关注微信公众号blackerteam,更多详见www.blackerteam.com 这几年移动互联网发展势头很猛,与 ...

  10. grub2

    手工启动 set  root(hd0,msdos7) linux  /boot/vmlinuz-3.9.8-300.fc19.i686.PAE  root=/dev/sda7 initrd  /boo ...