Python Flask框架实现简单加法工具过程解析


Posted in Python onJune 03, 2020

主程序mainaddfunc.py

from flask import Flask, render_template, request, url_for
from add import *

app = Flask(__name__)
 
@app.route('/', methods=['GET'])
def home():
  return render_template('index.html')

@app.route('/', methods=['POST'])
def add():
    a = request.form['adder1']
    b = request.form['adder2']
    try:
      a = float(a)
      b = float(b)
      result = sum_function(a, b)
      return render_template('index.html', result=result, var1=a, var2=b)
    except:
      return render_template('index.html', message='inputs false!!!', var1=a, var2=b)
    
if __name__ == '__main__':
  app.run(port=8080)

大家可以对比原作者的代码可以发现,我这里的result调用了一个python的子函数sum_function,或许有的同学可能会说,这么简单的加法调用神马子程序,不嫌麻烦,话是如此,但是一个简单的调用可以打开子函数的新大门,遇到麻烦的函数的时候,只需要想想这个模板可行,自然而然就用到函数调用了。修改的第二点加入了try语句,判断输入的加数是否是数字,当不是浮点数的时候,报错。修改的第三点可以看见加入了var1和var2两个变量,也就是两个加数作为了变量传递给了html。这么做的好处是什么,来,先看下一段代码index.html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>加法</title>
</head>
<body>
<div align="center" style="margin-top: 40px;">
  <form name="form1" method="POST">
    <input type="text" placeholder="adder" name="adder1" value="{{ var1 }}">+
    <input type="text" placeholder="adder-2" name="adder2" value="{{ var2 }}">=
    <input type="text" readonly="readonly" placeholder="result" name="result" value="{{ result }}">
    <input type="submit" value="计算" οnclick="">
  </form>
</div>
{% if message %}
  <p style="color:red">{{ message }}</p>
  {% endif %}
</body>

对比原作者的代码,我加入了value="{{ var1 }}和value="{{ var2 }},这么做的好处就是输入了两个加数之后,点击计算按钮之后,输入的加数仍然在框框里,不会随着刷新显示不见,原作者在最后也发现了这个问题,我做了改进,最后是运行的结果

正确输入和错误输入的情况下:

Python Flask框架实现简单加法工具过程解析

Python Flask框架实现简单加法工具过程解析

就这样了。初学的同学,小提示一下,在谷歌浏览器输入http://localhost:8080/就可以看到运行结果了,毕竟flask是用来做web的。最后贴上我的py子函数add.py

def sum_function(a, b):
  c = a + b
  return c

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python中进行自动化单元测试的教程
Apr 15 Python
详解Python当中的字符串和编码
Apr 25 Python
python模拟登录并且保持cookie的方法详解
Apr 04 Python
简单谈谈Python中的元祖(Tuple)和字典(Dict)
Apr 21 Python
Python编程给numpy矩阵添加一列方法示例
Dec 04 Python
Python3 中文文件读写方法
Jan 23 Python
基于DataFrame筛选数据与loc的用法详解
May 18 Python
Opencv实现抠图背景图替换功能
May 21 Python
python getopt模块使用实例解析
Dec 18 Python
keras训练曲线,混淆矩阵,CNN层输出可视化实例
Jun 15 Python
Python中Pyspider爬虫框架的基本使用详解
Jan 27 Python
pytorch MSELoss计算平均的实现方法
May 12 Python
python自定义函数def的应用详解
Jun 03 #Python
Python中的整除和取模实例
Jun 03 #Python
python 负数取模运算实例
Jun 03 #Python
Python小白学习爬虫常用请求报头
Jun 03 #Python
Python新手学习函数默认参数设置
Jun 03 #Python
python seaborn heatmap可视化相关性矩阵实例
Jun 03 #Python
Python新手学习raise用法
Jun 03 #Python
You might like
PHP 模板高级篇总结
2006/12/21 PHP
一个php导出oracle库的php代码
2009/04/20 PHP
PHP验证码类代码( 最新修改,完全定制化! )
2010/12/02 PHP
thinkPHP中create方法与令牌验证实例浅析
2015/12/08 PHP
在模板页面的js使用办法
2010/04/01 Javascript
jquery 的 $(&quot;#id&quot;).html() 无内容的解决方法
2010/06/07 Javascript
javascript淡入淡出效果的实现思路
2012/03/31 Javascript
js动态修改input输入框的type属性(实现方法解析)
2013/11/13 Javascript
学习jQuey中的return false
2015/12/18 Javascript
利用JavaScript阻止表单提交的两种方法
2016/08/11 Javascript
vue构建单页面应用实战
2017/04/10 Javascript
JavaScript常见事件处理程序实例总结
2019/01/05 Javascript
vue自定义键盘信息、监听数据变化的方法示例【基于vm.$watch】
2019/03/16 Javascript
Webpack4+Babel7+ES6兼容IE8的实现
2019/04/10 Javascript
vue实现全屏滚动效果(非fullpage.js)
2020/03/07 Javascript
[00:35]DOTA2上海特级锦标赛 VP战队宣传片
2016/03/04 DOTA
[00:31]2016完美“圣”典风云人物:国士无双宣传片
2016/12/04 DOTA
Windows10下 python3.7 安装 facenet的教程
2019/09/10 Python
Django 实现Admin自动填充当前用户的示例代码
2019/11/18 Python
TensorFlow tf.nn.max_pool实现池化操作方式
2020/01/04 Python
python在不同条件下的输入与输出
2020/02/13 Python
为什么说python更适合树莓派编程
2020/07/20 Python
协程Python 中实现多任务耗资源最小的方式
2020/10/19 Python
Opencv常见图像格式Data Type及代码实例
2020/11/02 Python
html5是什么_动力节点Java学院整理
2017/07/07 HTML / CSS
应届毕业生就业自荐信
2013/10/26 职场文书
专科毕业生就业推荐信
2013/11/01 职场文书
函授本科自我鉴定
2014/02/04 职场文书
《陈毅探母》教学反思
2014/05/01 职场文书
锦旗标语大全
2014/06/23 职场文书
园艺专业毕业生求职信
2014/09/02 职场文书
2014年党员教师自我剖析材料
2014/09/30 职场文书
大学生国家助学金感谢信
2015/01/23 职场文书
丧事答谢词大全
2015/09/30 职场文书
2019年干货:自我鉴定
2019/03/25 职场文书
导游词之金鞭溪风景区
2019/09/12 职场文书