使用Flask封装Python脚本为按钮执行

在现代Web开发中,Flask是一个轻量级的Python Web框架,广受开发者喜爱。如果你想将Python脚本通过Web按钮实现一键执行的功能,这篇文章将帮助你完成这一目标。

1. 项目准备

首先,你需要安装Flask。如果你的环境中还没有安装Flask,可以使用以下命令:

pip install Flask

接下来,我们准备一个简单的Python脚本,将在按钮被点击时执行。假设我们有一个Python脚本 script.py,其功能是计算给定数字的平方。

# script.py
def calculate_square(n):
    return n * n

2. 创建Flask应用

接下来,我们将会创建一个Flask应用,并设置一个按钮,用于执行该脚本。以下是Flask应用的基本结构:

# app.py
from flask import Flask, render_template, request
import script

app = Flask(__name__)

@app.route('/')
def home():
    return render_template('index.html')

@app.route('/execute', methods=['POST'])
def execute_script():
    number = int(request.form['number'])
    result = script.calculate_square(number)
    return render_template('result.html', result=result)

if __name__ == '__main__':
    app.run(debug=True)

在以上代码中,我们定义了两个路由:根路由和执行路由。home函数会渲染一个HTML表单,而execute_script函数会处理按钮的点击事件,执行我们的Python脚本。

3. 编写HTML文件

在根路由返回的页面中,我们需要一个表单,让用户输入数字并能点击按钮。你可以在一个名为templates的文件夹中创建index.htmlresult.html

index.html

<!DOCTYPE html>
<html>
<head>
    <title>Calculate Square</title>
</head>
<body>
    Calculate Square of a Number
    <form action="/execute" method="POST">
        <input type="number" name="number" required>
        <button type="submit">Calculate</button>
    </form>
</body>
</html>

result.html

<!DOCTYPE html>
<html>
<head>
    <title>Result</title>
</head>
<body>
    Result
    <p>The square is: {{ result }}</p>
    <a rel="nofollow" href="/">Back</a>
</body>
</html>

4. 流程概述

为了更直观理解整个流程,可以用以下的流程图表示:

flowchart TD
    A[用户访问首页] --> B{是否输入数字}
    B --|是|--> C[用户点击计算按钮]
    C --> D[执行脚本计算平方]
    D --> E[返回结果]
    B --|否|--> F[提示输入数字]

5. 结果展示与数据可视化

如果你想要在结果页面展示饼状图,可以使用一些前端绘图库,例如Chart.js。实际生成的数据将通过Python脚本计算得出,并可以将其分享为饼状图数据。

以下为示例饼状图的代码:

pie
    title 结果分布
    "计算成功": 70
    "计算失败": 30

通过以上代码,生成的饼状图展示了计算成功和失败的比例。

结论

本文介绍了如何通过Flask框架将Python脚本封装为Web按钮执行的功能,整个过程简单而有效。随着技能的提升,你还可以在此基础上添加更多功能和改进,希望这篇文章能为你提供帮助,让你在Web开发的世界中更进一步!