Flask最强攻略 - 跟DragonFire学Flask - 第五篇 做一个用户登录之后查看学员信息的小例子
需求: 1. 用户名: oldboy 密码: oldboy123 2. 用户登录成功之后跳转到列表页面 3. 失败有消息提示,重新登录 4.点击学生名称之后,可以看到学生的详细信息 后端: 1 from flask import Flask
2 from flask import request
3 from flask import render_template
4 from flask import redirect
5
6 USER = {'username': 'old
Flask最强攻略 - 跟DragonFire学Flask - 第八篇 实例化Flask的参数 及 对app的配置
Flask 是一个非常灵活且短小精干的web框架 , 那么灵活性从什么地方体现呢? 有一个神奇的东西叫 Flask配置 , 这个东西怎么用呢? 它能给我们带来怎么样的方便呢? 首先展示一下: from flask import Flask
app = Flask(__name__) # type:Flask
app.config["DEBUG"] = True 这句 app.config["DEBUG"] = True 可以实现的功能可刺激了 代码只要发生改动,自动重启Flask程序(ap
Flask最强攻略 - 跟DragonFire学Flask - 第七篇 Flask 中路由系统
Flask中的路由系统其实我们并不陌生了,从一开始到现在都一直在应用 @app.route("/",methods=["GET","POST"]) 为什么要这么用?其中的工作原理我们知道多少? 请关注跟DragonFire学Flask 之 路由系统 ,这里有你想要的答案 1. @app.route() 装饰器中的参数 如果不明白装饰器 点击这里 methods : 当前 url 地址,允许访问的请求方式 @app.route("/info", methods=["GET", "POST"])
python、pip、whl安装和使用
1 python的安装 首先,从python的官方网站 www.python.org下载需要的python版本,地址是这个: http://www.python.org/ftp/python/2.7.6/python-2.7.6.msi 然后,运行下载的MSI安装包,不需要更改任何默认设置,直接一路点“Next”即可完成安装: 默认会安装到C:\Python27目录下,但是当你兴致勃勃地打开命令提示符窗口,敲入python后,会得到: ‘python’不是内部或外部命令,也不是可运行的程序或批
Flask最强攻略 - 跟DragonFire学Flask - 第十篇 before_request after_request
Flask我们已经学习很多基础知识了,现在有一个问题 我们现在有一个 Flask 程序其中有3个路由和视图函数,如下: from flask import Flask
app = Flask(__name__) # type:Flask
@app.route("/login")
def login():
return "Login"
@app.route("/index")
def index():
return "Index"
@app.route("/home"
Flask最强攻略 - 跟DragonFire学Flask - 第九篇 Flask 中的蓝图(BluePrint)
蓝图,听起来就是一个很宏伟的东西 在Flask中的蓝图 blueprint 也是非常宏伟的 它的作用就是将 功能 与 主服务 分开怎么理解呢? 比如说,你有一个客户管理系统,最开始的时候,只有一个查看客户列表的功能,后来你又加入了一个添加客户的功能(add_user)模块, 然后又加入了一个删除客户的功能(del_user)模块,然后又加入了一个修改客户的功能(up_user)模块,在这个系统中,就可以将 查看客户,修改客户,添加客户,删除客户的四个功能做成蓝图加入到客户管理系统中,本篇最后会
python3进阶开发-第一个仿博客园的项目(1)
首先我们要设计一下表结构: UserInfo(用户信息表) --------》一对一 -----------》Blog(博客信息表) UserInfo(用户信息表) ---------》一对多 -----------》Article UpDown(点赞表) UserInfo(用户信息表) ---------》一对多 -----------》Article Comment(评论表) UserInfo(用户信息表)----------》一对多 -----------》Article(文章) Blo
前端模块化(CommonJs,AMD和CMD)
前端模块规范有三种:CommonJs,AMD和CMD。CommonJs用在服务器端,AMD和CMD用在浏览器环境AMD 是 RequireJS 在推广过程中对模块定义的规范化产出。CMD 是 SeaJS 在推广过程中对模块定义的规范化产出。AMD:提前执行(异步加载:依赖先执行)+延迟执行CMD:延迟执行(运行到需加载,根据顺序执行)模块函数写法 function f1(){
//......
[动态规划] 洛谷P1216 数字三角形 (DP入门)
题目
思路与代码
一.先将问题往适合DP的方向抽象。
1.将当前位置(i,j)看成一个状态,定义状态(i,j)的**指标函数**d(i,j)为从位置(i,j)除法能得到的最大和(包括(i,j))。
2.原问题的解:d(1,1)。
3.状态之间是如何转换的,即状态转移方程:d(i,j)=G(i,j)+max(d(i+1,j),d(i+1,j+1))d(i,j)=G(i,j)+max(d...
[动态规划] NYOJ16 矩形嵌套问题 (DAG的不固定起点的最长路)
题目
有n个矩形,每个矩形可以用a,b来描述,表示长和宽。矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a < c,b < d或者b < c,a < d(相当于旋转X90度)。例如(1,5)可以嵌套在(6,2)内,但不能嵌套在(3,4)中。你的任务是选出尽可能多的矩形排成一行,使得除最后一个外,每一个矩形都可以嵌套在下一个矩形内。
思路
1.将问题抽象为适合DP...
[动态规划] aoapc-ch9 硬币问题 (DAG的不固定起点终点的最长短路)
题目
思路
DAG的固定起点和终点的最短路和最航路问题。
0.抽象:初始状态为S,末状态为0,每次使用一个硬币,状态由S’变为S’-V[i]。为DAG。
1.状态及指标函数定义:mind[i]:0->i最短路长度,maxd[i]:0->i最长路长度。
2.状态转移方程:
mind(i)=minmind(i−Vx)+1,x∈[0,n)mind(i)=minmind(i...
[动态规划] UVa1025 城市里的间谍 (DAG的固定起点终点最长短路)
题目
思路
本题的难点在于抽象,由于时间本身就是一个天然的“序”,所以可以由时间和所在车站组成状态。
1.状态定义:(T,i),在T时刻位于i车站。
2.指针函数:d(T,i),还需在车站等待多长时间。
3.状态转移方程:
取决于对于每个状态,有三种决策:
- 等1分钟。
- 乘坐往右开的车,去向右第一个车站。(有车的话)
- 乘坐往做开的车,去向左第一个车站。(有车的话)
...
[动态规划] UVa437 巴比伦塔 (DAG的不确定起点终点的最长路)
题目
有n(n≤30)种立方体,每种都有无穷多个。要求选一些立方体摞成一根尽量高的柱子 (可以自行选择哪一条边作为高),使得每个立方体的底面长宽分别严格小于它下方立方体的底面长宽。
思路
DAG的不确定起点终点的最长路
1.状态及指标函数:d(i),在编号为i的立方体做塔的最底部,所能叠出的最高高度。(包括此立方体)
2.状态转移方程:
d(i)=maxd(j)+i.h|(j,i)∈E...
[动态规划] UVa1347 旅行 (DAG的固定起点终点的最短路)
题目
思路
1.抽象(神乎其技):由于从左到右不方便思考,可以将问题转换为,两个人同时从最左点出发,沿着两条路径走,最后都走到最右点,并且除了起点和终点外每个点恰好被一个人走过。
2.状态定义:(i,j),表示1~i已经全部走过,且两个人分别位于i,j(i>j)。
3.指标函数:d(i,j),还需要走的距离。
4.状态转移方程:
d(i,j)=min(d(i+1,j)+d...
[动态规划] UVa116 单向TSP (多阶段决策问题)
题目
思路
多阶段图的最短路
1.本题中,每一列就是一个阶段,每个阶段都有3种决策:直行,右下和坐上。
2.状态定义:(i,j),出于第j列第i行。
3.指标函数:d(i,j),从格子(i,j)出发到最后一列的最短边权路。(最短边权路,是将格子数字大小作为边的权,即数字之和最小的路)
4.状态转移方程:
d(i,j) = min\{d(i+1,j+1),&nb...
[动态规划] NYOJ311 完全背包问题
题目
思路
1.状态及指标函数:d(S),S->0的最大边权路
2.状态转移方程:
d(i)=/left/d[i−Vx]+Wx/right/d(i)=/left/d[i−Vx]+Wx/right/ d(i) = /left/{ d[i-V_x] + W_x /right/}
3.本题NYOJ有点卡常的感觉,记忆化搜索TLE,普通递推TLE,必须把递推的顺序反以下才能AC。
...
[动态规划问题] 01背包问题(多阶段决策问题)
题目
思路
1.状态的推导:最初会想到d(S)表示,0->S的最大边权值。但这样的状态,转移时是无序的,也就是无法确定下一个要装的物品i,是否已经被装过。所以应该将状态转移有序化,也就是通过状态就能表现出哪些物品拿了哪些没有。所以状态定义为(i,j),第i层剩余容量为j。
2.状态及指针函数:d(i,j),处于第i层(前i个物品已经遍历),背包剩余容量为j,这种情况的最大边权(最大...
在弱省弱校,体验OI生活
心情不好,特写此文。
在弱省弱校,如果你想要体验一下OI生活,那将会发生以下事情:
1.学校竞赛很弱,大概在分数线很低的弱省,一年也不会有大于2个省一。
本身其它学科竞赛,数理物化,的重视程度就不高。并且学校对于竞赛的态度,仅仅是自主招生的筹码,学习好的拿个省二省三过自招初审,学习一般的拿个非学科竞赛的国一国二装装b。
而真正的OI生活,是从NOIP走到NOI的。
而且对于一个合格的OI...
[动态规划] UVa12563 劲歌金曲 (01背包问题)
题目
思路
01背包问题
1.状态定义:(i,j), 遍历到i时,剩余时间为T
2.指标函数:d(i,j), 唱了歌数
3.答案:d(n,1~TT), 边界:d[1][TT] = 0, d[1][TT-time[1]] = 1;
4.状态转移方程:
d(i,j)={d(i−1,j),d(i−1,j+time[i]+1)}d(i,j)={d(i−1,j),d(i−1,j+time[...
[动态规划] 洛谷P1060 开心的金明(01背包裸题)
题目
LP1060
思路
1.状态及指标:d(i,j),遍历到第i个数,还剩钱数,值为乘积
2.状态转移方程:
d(i,j)=max{d(i−1,j),d(i−1,j+V[i])+W[i]∗V[i]}d(i,j)=max{d(i−1,j),d(i−1,j+V[i])+W[i]∗V[i]} d(i,j) = max \left\{ d(i-1,j) , d(i-1,j+V[i]) + ...
今日推荐
周排行