Python之Flask Web开发
下载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开发的更多相关文章
- 《Flask Web开发——基于Python的Web应用开发实践》一字一句上机实践(上)
目录 前言 第1章 安装 第2章 程序的基本结构 第3章 模板 第4章 Web表单 第5章 数据库 第6章 电子邮件 第7章 大型程序的结构 前言 学习Python也有一个半月时间了,学到现在感觉 ...
- 学习参考《Flask Web开发:基于Python的Web应用开发实战(第2版)》中文PDF+源代码
在学习python Web开发时,我们会选择使用Django.flask等框架. 在学习flask时,推荐学习看看<Flask Web开发:基于Python的Web应用开发实战(第2版)> ...
- 《Flask Web开发实战:入门、进阶与原理解析(李辉著 )》PDF+源代码
一句话评价: 这可能是市面上(包括国外出版的)你能找到最好的讲Flask的书了 下载:链接: https://pan.baidu.com/s/1ioEfLc7Hc15jFpC-DmEYBA 提取码: ...
- Flask Web开发读书笔记
开篇:目前想自学Flask Web开发--基于Python,找了几本书准备啃啃,同时也会分享读书笔记.希望和大家一起进步. Flask是小型框架,可以算是微框架,但是他的功能还是比较多 Flask有三 ...
- Flask web开发 请求拦截和预处理
我们在开发WEB应用时,往往会需要对所有的url请求进行拦截,做些预处理,比如权限处理.日志等统一处理. 本文介绍一下Flask中的处理机制.我们通过一个简单的例子来说明. 1.编写一个简单应用 ru ...
- Flask web开发 处理Session
本文我们在上篇文章<Flask web开发 处理POST请求(登录案例)>的基础上,来讲述Flask对session的支持. 在上面案例上,我们需要修改和新增如下功能 1.登录成功后的 ...
- pycharm+python+Django之web开发环境的搭建(windows)
转载:https://blog.csdn.net/yjx2323999451/article/details/53200243/ pycharm+python+Django之web开发环境的搭建(wi ...
- 使用eclipse搭建第一个python+Django的web开发实例
python+Django的web开发实例 一.创建一个项目如果这是你第一次使用Django,那么你必须进行一些初始设置.也就是通过自动生成代码来建立一个Django项目--一个Django项目的 ...
- [flask/python/web] 解析flask web开发(Miguel著)一书第11章主页不显示博文表单的问题
---------------------------------------------以下内容2017.7.14更新---------------------------------------- ...
随机推荐
- html5—— 应用程序缓存
使用 HTML5,通过创建 cache manifest 文件,可以轻松地创建 web 应用的离线版本. 什么是应用程序缓存(Application Cache)? HTML5 引入了应用程序缓存,这 ...
- Linux-服务排查
root用户下,操作以下5步: 1.查网络,保证本机与对方互相通信 ifconfig ipconfig ping 2.查Linux的对应服务是否启动,使服务的status保持running状态 比如s ...
- NOIP2013Day1解题报告
本来今天晚上拿13年NOIP的题目来做一下,测测能够得多少分,结果一晚上把Day1写完竟然AK了,吼吼吼 D1T1,题目:http://codevs.cn/problem/3285/ 很水的一道快速幂 ...
- Android基础总结(3)——UI界面布局
Android的UI设计有好几种界面程序编写方式.大体上可分为两大类:一类是利用可视化工具来进行,允许你进行拖拽控件来进行布局:还有一类是编写xml文档来进行布局.这两种方法可以相互转换. 1.常见的 ...
- 多行文字垂直居中(完美兼容chrome firefox IE6 7 8 9)
在说到这个问题的时候,也许有人会问CSS中不是有vertical-align属性来设置垂直居中的吗?即使是某些浏览器不支持我只需做少许的CSS Hack技术就可以啊!所以在这里我还要啰嗦两句,CSS中 ...
- 【MySQL】MySQL回滚工具
1.mysqlbinlog把事务从binlog中导出 2.从导出的binlog中找到要回滚的事务,去掉第一个DML语句前和最后一个DML语句后与DML无关的binlog信息 3.在目录中新建一个tab ...
- python3.5在print和input上的几个变化
1. 在python3.5中使用print,打印内容必须用括号()括起来.python2.7中可以不用括号,如果你加了括号,代码在python2.7中也是可以正常运行的. python3.5 exam ...
- hbase查询,scan详解
一.shell 查询 hbase 查询相当简单,提供了get和scan两种方式,也不存在多表联合查询的问题.复杂查询需通过hive创建相应外部表,用sql语句自动生成mapreduce进行.但是这种简 ...
- Android IOS WebRTC 音视频开发总结(六一)-- 大数据解密国内实时通讯行业开发现状
本文主要介绍国内实时通讯行业现状,文章最早发表在我们的微信公众号上,详见这里,欢迎关注微信公众号blackerteam,更多详见www.blackerteam.com 这几年移动互联网发展势头很猛,与 ...
- grub2
手工启动 set root(hd0,msdos7) linux /boot/vmlinuz-3.9.8-300.fc19.i686.PAE root=/dev/sda7 initrd /boo ...