Python>>>Flask框架使用之入门
操作平台Windows Python2.7
安装
pip install flask
Hello World程序
from flask import Flask
app = Flask(__name__) @app.route('/hello') def hello_world():
return "Hello World!!"
if __name__ == '__main__':
app.run()
route装饰器是用于把一个函数绑定到一个 URL 上
主页后面不同的URL
@app.route('/')
def index_page():
return "this is the homepage"
@app.route('/hello')
def hello_world():
return "Hello World!!"
@app.route('/user')
def user():
return "this is the userspage"
变量规则
@app.route('/user/<username>')
def show_user_profile(username):
# 显示用户的名称
return 'User %s' % username
@app.route('/post/<int:post_id>')
def show_post(post_id):
# 显示提交整型的用户"id"的结果,注意"int"是将输入的字符串形式转换为整型数据
return 'Post %d' % post_id
静态文件放在 static目录中,模板文件放在templates目录下。
from flask import Flask
from flask import render_template
app = Flask(__name__) @app.route('/hello')
@app.route('/hello/<mypara>')
def hello_world(mypara=None):
return render_template('myhello.html',yourcontext=mypara) if __name__ == '__main__':
app.run()
这个py文件有个templates文件夹,里面有一个myhello.html
内容如下
<!doctype html>
<title>Hello from Flask</title>
{% if yourcontext %}
<h1>Hello {{ yourcontext }}!</h1>
{% else %}
<h1>Hello World!</h1>
{% endif %}
yourcontext字符串会替代相关。
一个简单登录网页
本例子效果如下

用户名和密码都正确(tianao)返回
Hello tianao!
否则返回
Hello Invalid username/password!
一共三个文件。主要的py文件,templates目录下的hello.html ,login.html
from flask import Flask
from flask import request
from flask import render_template
app = Flask(__name__)
@app.route('/login', methods=['POST', 'GET'])
def login():
error = None
if request.method == 'POST':
if request.form['username'] == 'tianao' and request.form['password'] == 'tianao':
return render_template('hello.html', name=request.form['username'])
else:
error = 'Invalid username/password'
return render_template('login.html', error=error)
if __name__ == '__main__':
app.run()
hello.html
<!doctype html>
<title>Hello from Flask</title> {% if name %}
<h1>Hello {{ name }}!</h1>
{% else %}
<h1>Hello World!</h1>
{% endif %}
login.html
<!doctype html>
<title>Login Page</title>
<form action="../login" method="POST">
<input type="text" name="username" />
<input type="password" name="password" />
<input type="submit" value="submit" />
</form>
{% if error %}
<h1>Hello {{ error }}!</h1>
{% else %}
<h1>Success!</h1>
{% endif %}
Python>>>Flask框架使用之入门的更多相关文章
- Python之Flask框架项目Demo入门
Python+Flask框架项目Demo入门 本例子用到了 Flask+蓝图+Flask-Login+SQLAlchemy+WTForms+PyMySQL相关架构 Flask Web框架介绍 Flas ...
- Python 什么是flask框架?快速入门
一:Python flask框架 前言 1.Python 面向对象的高级编程语言,以其语法简单.免费开源.免编译扩展性高,同时也可以嵌入到C/C++程序和丰富的第三方库,Python运用到大数据分析. ...
- Linux ubantu中安装虚拟/使用环境virtualenv以及python flask框架
今天学习了python flask框架的安装过程以及使用案例,感觉网上讲的东西都没有从我们这种初学者的角度去考虑(哈哈),最后还是奉上心得: 1.安装virtualenv $ sudo apt-get ...
- python flask框架学习——开启debug模式
学习自:知了课堂Python Flask框架——全栈开发 1.flask的几种debug模式的方法 # 1.app.run 传参debug=true app.run(debug=True) #2 设置 ...
- python flask框架学习(二)——第一个flask程序
第一个flask程序 学习自:知了课堂Python Flask框架——全栈开发 1.用pycharm新建一个flask项目 2.运行程序 from flask import Flask # 创建一个F ...
- python flask框架学习(一)——准备工作和环境配置与安装
Flask装备: 学习自:知了课堂Python Flask框架——全栈开发 1.Python版本:3.6 2.Pycharm软件: 3.安装虚拟环境: (1)安装virtualenv: pip ins ...
- #3使用html+css+js制作网页 番外篇 使用python flask 框架 (II)
#3使用html+css+js制作网页 番外篇 使用python flask 框架 II第二部 0. 本系列教程 1. 登录功能准备 a.python中操控mysql b. 安装数据库 c.安装mys ...
- #3使用html+css+js制作网页 番外篇 使用python flask 框架 (I)
#3使用html+css+js制作网页 番外篇 使用python flask 框架(I 第一部) 0. 本系列教程 1. 准备 a.python b. flask c. flask 环境安装 d. f ...
- Python Flask框架路由简单实现
Python Flask框架路由的简单实现 也许你听说过Flask框架.也许你也使用过,也使用的非常好.但是当你在浏览器上输入一串路由地址,跳转至你所写的页面,在Flask中是怎样实现的,你是否感到好 ...
随机推荐
- SSH框架
一,Struts2框架部署 1,搭建Struts2的jar包 1.1,Struts2所需各个jar包的作用 asm-3.3.jar 操 ...
- 第二章 搭建Android开发环境
这一章为我们讲解了如何搭建Android开发环境. 首先要了解的是Android底层开发需要哪些工具:搭建android应用程序开发环境.android NDK开发环境和交叉编译环境,前两个用来测试L ...
- Meta http-equiv属性与HTTP头的Expires中(Cache-control)详解
一.概述 A.http-equiv顾名思义,相当于http的文件头作用,它可以向浏览器传回一些有用的信息,以帮助正确和精确地显示网页内容,与之对应的属性值为content,content中的内容其实就 ...
- Android Studio下SlidingMenu的导入与基础使用
一.关于这个控件,其实我们现在很多app都在用,最简单的,你打开QQ,当看资料卡的时候,首先要侧拉一下,那个就是SlidingMenu 这几天查了很多资料,各种方法都试了,但是一直都没有成功,最后在一 ...
- struct与union字节大小的终极解释
1.字节对齐的细节和编译器实现相关,但一般而言,如在windows下,就VC而言,满足一下三个准则:1) 结构体变量的首地址能够被其最宽基本类型成员的大小所整除:2) 结构体每个成员相对于结构体首地址 ...
- iOS学习之block
Block是C语言的扩充功能.带有自动变量(局部变量)的匿名函数.(不带有名称的函数) 非匿名函数:int func(int count):(声明了名称为func的函数)使用:int result = ...
- 没有为扩展名.htm注册的生成提供程序,没有为扩展名.html注册的生成提供程序
在web.config中添加下面这段 代码如下 <buildProviders> <add extension=".html" type="System ...
- typedef关键字
1. typedef的作用 在计算机编程语言中用来为复杂的声明定义简单的别名,与宏定义有些差异.它本身是一种存储类的关键字,与auto.extern.static.register等关键字不能出现在同 ...
- c++11新的小猫腻
1.void*指针的使用,平时见得也很多了,至于为什么使用void* 指针,很多人有自己的见解,反正普通指针轻轻松松的转向void * 指针,但是void*指针转向其他的指针都要采用强制转换的. 2. ...
- HDU 5441 离线处理 + 并查集
题意:给n个节点m条带权值边的无向图.然后q个问题,每次询问点对的数目,点对需要满足的条件是:1)连通:2)其路径的最大权值不能超过询问值. 分析:如果没次询问一次,dfs一次,很可能超时,因此可以用 ...