TECH4GEEKS-LOGO-HEADER
Oxary Magazine
$10 – $15 / Week

Cómo crear una calculadora de propinas y divisiones en Python

Aprendamos a crear una calculadora de propinas y divisiones en Python.

Este es un gran proyecto personal para construir para practicar sus habilidades de Python. Además, este tutorial le enseñará cómo construir la aplicación de dos maneras, primero como una herramienta de línea de comandos y segundo como una herramienta GUI.

Conocimiento

Construiremos la aplicación de dos maneras. Primero, crearemos un script de shell de Python simple que solicite al usuario una entrada y escriba la salida.

Captura de pantalla de 2023-01-05-19-30-39

En segundo lugar, le daremos al programa una interfaz gráfica de usuario usando Tkinter.

Captura de pantalla de 2023-01-05-15-11-29

Especificación del programa

El programa recibe tres entradas:

  • El monto de la factura
  • El porcentaje de propina
  • El número de personas que comparten la factura.

Usando estas entradas, el programa calculará la siguiente salida:

  • La contribución de todos a la factura.
  • Aporte de cada uno a la propina
  • La contribución total de todos

Algoritmo

Para lograr esto, la calculadora Tip and Split seguirá un algoritmo muy simple que se describe a continuación:

  • Recibir entradas: cantidad_factura, porcentaje_propina, número_de_personas
  • Calcule el monto de la propina multiplicando bill_amount * tip_percentage / 100
  • Divide bill_amount por number_of_people para obtener la contribución de cada persona a la factura.
  • Divide propina_cantidad por número_de_personas para obtener la contribución de cada persona a la propina.
  • Finalmente, agregue las contribuciones de facturas y la propina para obtener el monto total a pagar.
  • condiciones previas

    Para seguir este tutorial, debe conocer y comprender el lenguaje de programación Python. Para este tutorial, se requiere conocimiento de conceptos básicos, incluidas funciones y clases.

      7 herramientas de verificación de direcciones para garantizar una entrega confiable del producto

    Además, Python debe estar instalado en su sistema. Si no, ve a sitio web de Python y descargarlo Alternativamente, Geekflare tiene un compilador de Python en línea donde puede ejecutar su código de Python en el navegador sin ninguna configuración de entorno.

    Cree la calculadora con una interfaz de línea de comandos

    Crear una carpeta de proyecto

    Para comenzar, navegue a una carpeta vacía en su sistema. En mi caso, estoy usando Ubuntu 22.04, así que para crear una carpeta y acceder a ella usando la terminal; Necesito ingresar el siguiente comando:

    mkdir tip-calculator && cd tip-calculator

    Crear el archivo Python

    A continuación, cree el archivo de secuencia de comandos en el que escribiremos la secuencia de comandos de Python. En mi caso, voy a usar el comando touch para hacer esto:

    touch main.py

    Abra el archivo de script con su editor de código favorito

    Para comenzar a escribir el código del script, abra el archivo con su editor de código favorito. Usaré nano, que es un editor de texto basado en terminal.

    nano main.py

    Recibir entrada

    Una vez hecho esto, podemos agregar las siguientes líneas de código en la parte superior del archivo:

    # Receiving input for bill amount as a floating point number
    bill_amount = float(input("Bill amount: ")) 
    
    # Receiving input for the tip percentage as a floating point number
    tip_percentage = float(input("Tip percentage: "))
    
    # Receiving the input for the number of people as an integer
    number_of_people = int(input("Number of people: "))

    Básicamente, esto recibe la entrada y convierte el tipo de datos de cada entrada en una cadena al tipo más apropiado.

    Calcular el monto de la propina

    A continuación, calculamos el monto de la propina multiplicando el porcentaje de la propina por el monto de la factura.

    tip_amount = bill_amount * tip_percentage / 100

    Divide la cuenta y la propina para obtener la contribución de cada persona a ambos

    # Calculating each person's bill contribution
    bill_contribution = bill_amount / number_of_people
    
    # Calculating each person's tip contribution
    tip_contribution = tip_amount / number_of_people

    Calcular la contribución total

    Luego sume las contribuciones individuales para determinar la contribución total por persona.

    total_contribution = bill_contribution + tip_contribution

    Mostrar los resultados

    Finalmente, envíe los resultados al usuario.

    # Displayinnng the results
    print("Bill contribution per person: ", bill_contribution)
    print("Tip contribution per person: ", tip_contribution)
    print("Total contribution per person: ", total_contribution)

    Prueba de calculadora de propina y división

    Finalmente, su archivo de script debería verse así:

    # Receiving input for bill amount as a floating point number
    bill_amount = float(input("Bill amount: ")) 
    
    # Receiving input for the tip percentage as a floating point number
    tip_percentage = float(input("Tip percentage: "))
    
    # Receiving the input for the number of people as an integer
    number_of_people = int(input("Number of people: "))
    
    tip_amount = bill_amount * tip_percentage / 100
    
    # Calculating each person's bill contribution
    bill_contribution = bill_amount / number_of_people
    
    # Calculating each person's tip contribution
    tip_contribution = tip_amount / number_of_people
    
    total_contribution = bill_contribution + tip_contribution
    
    # Displaying the results
    print("Bill contribution per person: ", bill_contribution)
    print("Tip contribution per person: ", tip_contribution)
    print("Total contribution per person: ", total_contribution)

    En este punto, siéntete libre de probar tu aplicación usando el siguiente comando:

    python3 main.py

    Captura de pantalla de 2023-01-05-19-32-16

    Cree una calculadora de propinas y divisiones con GUI

    En la siguiente parte de este tutorial, implementaremos la misma aplicación pero con una interfaz gráfica de usuario. Para construir la GUI usaremos un paquete llamado Tkinter.

      Los 5 mejores IDE de React para probar

    Establecimiento

    Tkinter es un paquete integrado en la biblioteca estándar de Python. Esto significa que se instaló de manera predeterminada cuando instaló Python.

    Sin embargo, en máquinas Linux con Python instalado por defecto, TKinter no está preinstalado para ahorrar espacio. Por lo tanto, debe instalarlo manualmente con el siguiente comando:

    sudo apt-get install python3-tk

    Crear un archivo de proyecto

    Para comenzar, cree un archivo donde se almacenará el script de Python. Después de crear el archivo, ábralo con su editor de texto favorito.

    touch gui.py

    Importar Tkinter

    A continuación, importe el paquete Tkinter agregando la siguiente línea en la parte superior del archivo.

    import tkinter from tk

    Crear la interfaz de usuario

    Entonces podemos comenzar a crear la interfaz de usuario.

    # Creating the window
    window = tk.Tk()
    
    # Creating the Window title
    tk.Label(text="Tip and Split Calculator").pack()
    
    # Create an input field
    tk.Label(text="Enter bill amount").pack()
    ent_bill = tk.Entry(width=40)
    ent_bill.pack()
    
    # Create and entry for the tip percentage
    tk.Label(text="Enter tip percentage").pack()
    ent_tip = tk.Entry(width=40)
    ent_tip.pack()
    
    # Create an entry for the number of people
    tk.Label(text="Enter the number of people").pack()
    ent_people = tk.Entry(width=40)
    ent_people.pack()
    
    # Create the Enter button
    btn_enter = tk.Button(text="Enter")

    El código anterior creó una ventana que contenía todos los widgets de la interfaz de usuario. Además, creó una etiqueta que servirá como título de la ventana.

    Luego, creó etiquetas y campos de entrada para las tres entradas: bill_amount, tip_percent y number_of_people. Finalmente, creó un botón en el que el usuario hará clic para ejecutar el cálculo.

    Crear una función para calcular las salidas.

    Después de eso, podemos crear una función para manejar el clic del botón Enter. Esta función tomará los valores de los campos de entrada y los utilizará para calcular las salidas utilizando el algoritmo mencionado anteriormente. Finalmente, creará una etiqueta para mostrar la salida y actualizar la ventana.

    def handle_click(event):
        # Collecting the inputs from the entry fields using the get method
        # Also type casting the inputs from the default string data type
        bill_amount = float(ent_bill.get())
        tip_percentage = float(ent_tip.get())
        number_of_people = int(ent_people.get())
        
        # Calcuating the amount to be paid as a tip
        tip_amount = bill_amount * tip_percentage / 100
        
        # Calculating the bill contribution of each person at the table
        bill_contribution = bill_amount / number_of_people 
    
        # Calculating the tip contribution of each person at the table
        tip_contribution = tip_amount / number_of_people
    
        # Calculating the total contribution of each person
        total_contribution = bill_contribution + tip_contribution
    
        # Creating the output string
        output = f'Bill per person: {bill_contribution} \n Tip per person: {tip_contribution} \n Total per person: {total_contribution}'
        
        # Creating a label for the output text
        tk.Label(text=output).pack()
    
        # Updating the window to reflect the UI changes
        window.update()

    El código de función anterior se ha explicado con comentarios que explican cada paso principal.

      13 juegos geniales para jugar en Apple Arcade

    Adjuntar controlador de eventos al botón

    A continuación, vinculamos el controlador de eventos al evento de clic de botón. El evento de clic de botón en Tkinter está representado por la cadena ‘‘. Para vincular el evento al controlador de eventos, usamos el método de vinculación del botón. Agregue esta línea de código debajo de la definición de la función:

    btn_enter.bind('<Button-1>', handle_click)
    btn_enter.pack()

    Finalmente, para mantener la ventana en funcionamiento, llamamos al método mainloop del objeto ventana.

    window.mainloop()

    ¡Y hemos terminado!

    Prueba de calculadora de propina y división

    Puede ejecutar la aplicación usando el siguiente comando:

    python3 gui.py

    Esto debería abrir la ventana de la siguiente manera:

    Captura de pantalla de 2023-01-05-20-27-26

    Puede ejecutar la calculadora con entrada de muestra:

    Captura de pantalla de 2023-01-05-20-29-09

    Ultimas palabras

    En este tutorial, hemos creado una calculadora de propinas y divisiones de dos maneras. El primero utiliza una herramienta CLI basada en terminal. La segunda es una herramienta GUI que utiliza Tkinter de Python. Este tutorial muestra cómo crear un proyecto de Python simple. Si necesita repasar o repasar sus habilidades con Python, aquí hay un Cursos de campo de datos.

    Luego puede averiguar cómo crear un generador de contraseñas aleatorias en Python.

    Fuente

    Etiquetas

    Comparte en:

    Ultimos Post

    Categorias

    Lorem ipsum dolor sit amet, consectetur adipiscing elit eiusmod tempor ncididunt ut labore et dolore magna
    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore