Introducción
En este proyecto, te guiaremos sobre cómo crear una calculadora GUI básica utilizando Python y la biblioteca tkinter. Esta calculadora será capaz de realizar operaciones aritméticas simples como suma, resta, multiplicación y división.
👀 Vista previa

🎯 Tareas
En este proyecto, aprenderás:
- Cómo configurar la ventana principal de tkinter para la calculadora
- Cómo agregar una función de cálculo para realizar operaciones aritméticas
- Cómo crear un campo de entrada para que los usuarios ingresen números y vean los resultados
- Cómo agregar botones para dígitos, operaciones aritméticas y función de borrado
- Cómo ejecutar el bucle de eventos de tkinter para iniciar la calculadora
🏆 Logros
Después de completar este proyecto, serás capaz de:
- Utilizar la biblioteca tkinter para crear una interfaz gráfica de usuario
- Vincular funciones a botones para habilitar la interactividad
- Realizar operaciones aritméticas básicas en Python
- Mostrar y actualizar resultados utilizando un campo de entrada
Crea el archivo del proyecto
En primer lugar, crea un nuevo archivo de Python llamado labex_calculator.py. Este archivo contendrá el código de nuestra calculadora. Para crear el archivo, puedes utilizar la terminal o la interfaz gráfica de usuario de tu sistema operativo.
## Creando un nuevo archivo de Python
cd ~/proyecto
touch labex_calculator.py
Configura la ventana principal de Tkinter
Para comenzar a construir nuestra calculadora, abre el archivo labex_calculator.py en un editor de texto. El primer paso para crear nuestra interfaz gráfica de usuario (GUI) de la calculadora es crear una ventana principal. Lo haremos con la biblioteca tkinter.
## Importando la biblioteca tkinter
import tkinter as tk
## Creando la ventana principal de tkinter/toplevel
root = tk.Tk()
root.title('LabEx Calculator') ## Estableciendo el título de nuestra calculadora
root.geometry('400x600') ## Estableciendo el tamaño de nuestra calculadora
root.configure(background='light blue') ## Estableciendo el color de fondo de nuestra calculadora
Agrega una función de cálculo
Para que la calculadora pueda realizar operaciones aritméticas, define una función calculate.
def calculate(event):
text = event.widget.cget('text') ## Obteniendo el texto del botón
if text == '=':
try:
result = str(eval(entry.get())) ## Calcular el resultado
entry.set(result) ## Establecer la entrada con el resultado
except Exception as e:
entry.set('Error') ## En caso de error, establecer la entrada en 'Error'
return
if text == 'C':
entry.set('') ## Si se presiona 'C', limpiar la entrada
return
entry.set(entry.get() + text) ## Agregando el texto del botón presionado a la entrada
Crea un campo de entrada
Crea un campo de entrada para que los usuarios ingresen los números y vean los resultados de los cálculos.
entry = tk.StringVar()
entry.set('') ## Estableciendo la entrada inicial como una cadena vacía
entry1 = tk.Entry(root, textvar=entry, font='lucida 30 bold', bd=5, insertwidth=4, bg='powder blue', justify='right') ## Creando el campo de entrada
entry1.pack(fill=tk.X, ipadx=8, pady=10, padx=10) ## Posicionando el campo de entrada
Agrega botones
A continuación, agrega botones a la calculadora para dígitos, operaciones aritméticas y la función de limpiar.
button_frame = tk.Frame(root) ## Crea un marco para los botones
button_frame.pack() ## Agrega el marco a la ventana de tkinter
## Una lista para el texto de los botones
button_list = [
'7', '8', '9', '/',
'4', '5', '6', '*',
'1', '2', '3', '-',
'.', '0', '=', '+',
'00', '000', 'C'
]
## Creando y posicionando los botones
i = 0
for btn_text in button_list:
button = tk.Button(button_frame, text=btn_text, font='lucida 20 bold', bg='skyblue', padx=15, width=5)
button.grid(row=int(i/4), column=i%4, padx=3, pady=3)
i += 1
button.bind('<Button-1>', calculate) ## Vinculando la función 'calculate' al botón
Ejecuta el proyecto
Finalmente, ejecutemos el bucle de eventos de tkinter para iniciar la calculadora.
root.mainloop()
Vaya al escritorio y ejecute el proyecto.
python labex_calculator.py

Resumen
¡Felicidades! Ahora has creado una calculadora GUI básica usando Python y la biblioteca tkinter. Puedes ejecutar tu calculadora ejecutando el script labex_calculator.py. En este proyecto, hemos cubierto la creación de una ventana de tkinter, la adición de una función de cálculo, la creación de un campo de entrada para la calculadora, la adición de botones para realizar operaciones aritméticas y la ejecución de la calculadora.



