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 相关文章推荐
spyder常用快捷键(分享)
Jul 19 Python
Python 查看文件的编码格式方法
Dec 21 Python
Python配置虚拟环境图文步骤
May 20 Python
Python异常处理例题整理
Jul 07 Python
django+tornado实现实时查看远程日志的方法
Aug 12 Python
详解python中的生成器、迭代器、闭包、装饰器
Aug 22 Python
Python3简单爬虫抓取网页图片代码实例
Aug 26 Python
python 实现一个反向单位矩阵示例
Nov 29 Python
python安装及变量名介绍详解
Dec 12 Python
python excel和yaml文件的读取封装
Jan 12 Python
python 利用panda 实现列联表(交叉表)
Feb 06 Python
如何使用flask将模型部署为服务
May 13 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 页面执行时间计算代码
2008/12/04 PHP
PHP 采集程序原理分析篇
2010/03/05 PHP
php 抽象类的简单应用
2011/09/06 PHP
PHP 之 写时复制介绍(Copy On Write)
2014/05/13 PHP
分享下php5类中三种数据类型的区别
2015/01/26 PHP
jquery插件之easing 动态菜单
2010/08/21 Javascript
jquery中this的使用说明
2010/09/06 Javascript
js中top、clientTop、scrollTop、offsetTop的区别 文字详细说明版
2011/01/08 Javascript
jQuery实现的导航条切换可显示隐藏
2014/10/22 Javascript
jQuery的one()方法用法实例
2015/01/19 Javascript
javascript中局部变量和全局变量的区别详解
2015/02/27 Javascript
JS控制按钮10秒钟后可用的方法
2015/12/22 Javascript
JS 实现计算器详解及实例代码(一)
2017/01/08 Javascript
jquery easyui DataGrid简单示例
2017/01/23 Javascript
vue2.0实现移动端的输入框实时检索更新列表功能
2018/05/08 Javascript
Node.js系列之连接DB的方法(3)
2019/08/30 Javascript
vue动态禁用控件绑定disable的例子
2019/10/28 Javascript
浅谈vue中组件绑定事件时是否加.native
2019/11/09 Javascript
vue+element UI实现树形表格
2020/12/29 Vue.js
[08:07]DOTA2每周TOP10 精彩击杀集锦vol.8
2014/06/25 DOTA
整理Python最基本的操作字典的方法
2015/04/24 Python
python基础之包的导入和__init__.py的介绍
2018/01/08 Python
详解将Python程序(.py)转换为Windows可执行文件(.exe)
2019/07/19 Python
Django中的用户身份验证示例详解
2019/08/07 Python
通过实例简单了解Python中yield的作用
2019/12/11 Python
浅谈matplotlib中FigureCanvasXAgg的用法
2020/06/16 Python
Python Http请求json解析库用法解析
2020/11/28 Python
HTML5 Canvas绘制五星红旗
2016/05/04 HTML / CSS
Luxplus瑞典:香水和美容护理折扣
2018/01/28 全球购物
俄罗斯儿童和青少年服装、鞋子及配件的在线商店:Orby
2020/02/20 全球购物
实习生自我评价
2014/01/18 职场文书
建房协议书
2014/04/11 职场文书
《蚕姑娘》教学反思
2014/04/15 职场文书
学习经验演讲稿
2014/05/10 职场文书
民间借贷协议书范本
2014/10/01 职场文书
4S店收银员岗位职责
2015/04/07 职场文书