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 28 Python
浅谈Python 字符串格式化输出(format/printf)
Jul 21 Python
浅谈Python浅拷贝、深拷贝及引用机制
Dec 15 Python
Python中的sort()方法使用基础教程
Jan 08 Python
老生常谈python函数参数的区别(必看篇)
May 29 Python
对Python中的条件判断、循环以及循环的终止方法详解
Feb 08 Python
Python 通过requests实现腾讯新闻抓取爬虫的方法
Feb 22 Python
Python实现简单查找最长子串功能示例
Feb 26 Python
十个Python练手的实战项目,学会这些Python就基本没问题了(推荐)
Apr 26 Python
给 TensorFlow 变量进行赋值的方式
Feb 10 Python
浅谈keras中loss与val_loss的关系
Jun 22 Python
Cpython解释器中的GIL全局解释器锁
Nov 09 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
破解图片防盗链的代码(asp/php)测试通过
2010/07/02 PHP
php下关于Cannot use a scalar value as an array的解决办法
2010/08/08 PHP
php生成局部唯一识别码LUID的代码
2012/10/06 PHP
php命名空间学习详解
2014/02/27 PHP
ThinkPHP实现将SESSION存入MYSQL的方法
2014/07/22 PHP
Discuz7.2版的faq.php SQL注入漏洞分析
2014/08/06 PHP
PHP生成不重复标识符的方法
2014/11/21 PHP
PHP编程基本语法快速入门手册
2016/01/07 PHP
php使用timthumb生成缩略图的方法
2016/01/22 PHP
PHP基于回溯算法解决n皇后问题的方法示例
2017/11/07 PHP
php 替换文章中的图片路径,下载图片到本地服务器的方法
2018/02/06 PHP
重载toString实现JS HashMap分析
2011/03/13 Javascript
jqPlot 基于jquery的画图插件
2011/04/26 Javascript
javascript插入样式实现代码
2012/02/22 Javascript
来自国外的30个基于jquery的Web下拉菜单
2012/06/22 Javascript
javascript动画对象支持加速、减速、缓入、缓出的实现代码
2012/09/30 Javascript
jquery实现点击查看更多内容控制段落文字展开折叠效果
2015/08/06 Javascript
Javascript中replace()小结
2015/09/30 Javascript
移动端网页开发调试神器Eruda的介绍与使用技巧
2017/10/30 Javascript
基于vue循环列表时点击跳转页面的方法
2018/08/31 Javascript
tracking.js页面人脸识别插件使用方法
2020/04/16 Javascript
Vue使用Ref跨层级获取组件的步骤
2021/01/25 Vue.js
tensorflow 恢复指定层与不同层指定不同学习率的方法
2018/07/26 Python
Python远程视频监控程序的实例代码
2019/05/05 Python
html5简介及新增功能介绍
2020/05/18 HTML / CSS
什么造成了Java里面的异常
2016/04/24 面试题
主治医师岗位职责
2013/12/10 职场文书
素质拓展感言
2014/01/29 职场文书
《小白兔和小灰兔》教学反思
2014/02/18 职场文书
临床医师个人自我评价
2014/04/06 职场文书
食品安全责任书
2014/04/15 职场文书
银行行长竞聘演讲稿
2014/04/23 职场文书
公司内部升职自荐信
2015/03/27 职场文书
当幸福来敲门观后感
2015/06/01 职场文书
导游词之淮安明祖陵
2019/11/25 职场文书
对讲机的最大通讯距离是多少
2022/02/18 无线电