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

作者:青女素娥 时间:2021-08-17 20:36:11 

主程序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

来源:https://www.cnblogs.com/qingnvsue/p/12970145.html

标签:Python,Flask,框架
0
投稿

猜你喜欢

  • MySql节点管理安装步骤

    2010-10-14 14:13:00
  • 对用户进行电话访谈的一点感想

    2009-12-28 13:05:00
  • Mysql数据库备份和还原常用的命令

    2011-12-01 10:41:54
  • 使用python实现对元素的长截图功能

    2023-11-20 10:27:44
  • 《写给大家看的设计书》阅读笔记之对比原则

    2009-07-15 10:14:00
  • python 制作网站小说下载器

    2021-06-07 23:04:42
  • 为JavaScript程序添加客户端不可见的注释

    2008-05-31 08:02:00
  • Python 文件读写操作实例详解

    2023-08-04 10:41:53
  • 使用ewebeditor可能会重复提交数据两次的解决办法

    2009-01-09 12:41:00
  • 关于生成目录树结构的类

    2007-09-13 12:19:00
  • 谈谈设计师的发展

    2009-03-17 18:20:00
  • Oracle常见错误代码的分析与解决

    2010-07-26 13:01:00
  • python argparser的具体使用

    2023-07-13 09:25:36
  • XML简易教程之四

    2008-09-05 17:19:00
  • 了解WEB页面工具语言XML(三)支持工具

    2008-09-05 17:18:00
  • DW MX 的快键一览表

    2009-07-21 12:47:00
  • PaddleNLP ppdiffusers 自动生成兔了个兔海报

    2023-07-20 01:56:39
  • PHP中使用FFMPEG获取视频缩略图和视频总时长实例

    2023-11-16 18:57:46
  • 编辑BLOG文章的一些好习惯

    2007-11-15 06:35:00
  • 设计提升满意度

    2010-05-16 15:00:00
  • asp之家 网络编程 m.aspxhome.com