from flask import Flask, render_template, request app = Flask(__name__) def _calculate(a: float, b: float, op: str) -> float: if op == "+": return a + b if op == "-": return a - b if op == "*": return a * b if op == "/": if b == 0: raise ZeroDivisionError("Division by zero") return a / b raise ValueError("Unknown operation") @app.route("/", methods=["GET", "POST"]) def index(): result = None error = None a_val = "" b_val = "" op = "+" if request.method == "POST": a_val = request.form.get("a", "") b_val = request.form.get("b", "") op = request.form.get("op", "+") try: a = float(a_val) b = float(b_val) result = _calculate(a, b, op) except Exception as exc: # noqa: BLE001 - show a friendly message error = str(exc) return render_template( "index.html", result=result, error=error, a_val=a_val, b_val=b_val, op=op, ) if __name__ == "__main__": app.run(host="0.0.0.0", port=5000, debug=False)