-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapp.py
128 lines (113 loc) · 4.32 KB
/
app.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# Importar la libreria
from flask import Flask, request, render_template, redirect, jsonify
# Objeto de tipo Flask
app = Flask(__name__)
Personas = []
# Raiz del sitio
@app.route('/')
def inicio():
# return (f"Hola mundo...")
# mensaje = "Bienvenido al desarrollo de aplicaciones web"
# return render_template("bienvenido.html", texto=mensaje)
return redirect("calculadora")
# El código contiene una función llamada hola mundo que contiene un decorador @app.route('/') para
# mapear la ruta de la URL de la función. Adicionalmente la ruta apunta a la raíz del proyecto.
@app.route("/saludo/<nombre>")
def saludo(nombre):
return (f"Hola {nombre}")
@app.route("/numero/<n>")
def parImpar(n):
if (int(n)%2 == 0):
return (f"El número {n} es par")
else:
return (f"El número {n} es impar")
@app.route("/saludar/<nombre>")
def saludar(nombre):
titulo = request.args.get('titulo')
edad = request.args.get('edad')
genero = request.args.get('genero')
return (f"Hola {titulo} {nombre} Edad: {edad} Genero: {genero}")
@app.route("/tablas")
def tablas():
Personas.clear()
persona1 = ["Juan Sebastián","Laguna Yara","[email protected]"]
persona2 = ["Javier Alexis","Rojas","[email protected]"]
persona3 = ["Maira Fernanda","Osorio Flores","[email protected]"]
persona4 = ["Fransua","Gomez","[email protected]"]
Personas.append(persona1)
Personas.append(persona2)
Personas.append(persona3)
Personas.append(persona4)
return render_template('tabla.html', personas=Personas)
@app.route("/calculadora")
def calculadora():
return render_template('calculadora.html')
@app.route("/operaciones", methods=["POST"])
def operaciones():
if request.method == "POST":
mensaje = ""
d = (None,None,None)
accion = request.form["btnAction"]
if (accion == "Sumar"):
n1 = float(request.form["txtNumero1"])
n2 = float(request.form["txtNumero2"])
# if (n1 and n2):
resultado = n1 + n2
d = (n1,n2,resultado)
elif (accion == "Restar"):
n1 = float(request.form["txtNumero1"])
n2 = float(request.form["txtNumero2"])
# if (n1 and n2):
resultado = n1 - n2
d = (n1,n2,resultado)
elif (accion == "Multiplicar"):
n1 = float(request.form["txtNumero1"])
n2 = float(request.form["txtNumero2"])
# if (n1 and n2):
resultado = n1 * n2
d = (n1,n2,resultado)
elif (accion == "Dividir"):
n1 = float(request.form["txtNumero1"])
n2 = float(request.form["txtNumero2"])
# if (n1 and n2):
if (n2 == 0.0):
mensaje = "ERROR - ¡No se puede dividir por cero!"
print(mensaje)
else:
resultado = n1 / n2
d = (n1,n2,resultado)
print(mensaje)
return render_template("calculadora.html",datos=d,mensaje=mensaje)
@app.route("/sumar",methods=["POST"])
def sumar():
n1 = float(request.form["txtNumero1"])
n2 = float(request.form["txtNumero2"])
resultado = n1 + n2
return jsonify({"resultado":resultado, "estado":True})
@app.route("/restar",methods=["POST"])
def restar():
n1 = float(request.form["txtNumero1"])
n2 = float(request.form["txtNumero2"])
resultado = n1 - n2
return jsonify({"resultado":resultado, "estado":True})
@app.route("/multiplicar",methods=["POST"])
def multiplicar():
n1 = float(request.form["txtNumero1"])
n2 = float(request.form["txtNumero2"])
resultado = n1 * n2
return jsonify({"resultado":resultado, "estado":True})
@app.route("/dividir",methods=["POST"])
def dividir():
n1 = float(request.form["txtNumero1"])
n2 = float(request.form["txtNumero2"])
if (n2 == 0):
return jsonify({"resultado":"ERROR - ¡No se puede dividir por cero!", "estado":True})
else:
resultado = n1 / n2
return jsonify({"resultado":resultado, "estado":True})
# Iniciar la aplicación
if (__name__ == "__main__"):
app.run(host="0.0.0.0", port=3000, debug=True)
# En el código anterior se crea una instancia de Flask y se inicia la aplicación por el puerto 3000 y en
# modo debug para que se recargue automaticamente si hay actualizaciones en el código y muestre
# errores.