Código Python para Gestionar un Estacionamiento: Ver, Buscar y Pagar

Clasificado en Informática

Escrito el en español con un tamaño de 3,31 KB

Funciones para gestionar un estacionamiento en Python

A continuación se presentan tres funciones que permiten visualizar el estacionamiento, buscar un vehículo por su patente y realizar el pago y la salida.

1. Visualizar el estacionamiento

La función verestacionamiento() muestra el estado de cada lugar del estacionamiento:

def verestacionamiento():
    print("Ver estacionamiento")
    nro_fila=1
    print("A  B  C  D")
    for fila in range (10):
        for columna in range(4):
            if estacionamiento[fila][columna]== None:
                print("🟩",end="")
            else:
                print("🚗 ",end="")
        print(f"{nro_fila}")
        nro_fila+=1
  • 🟩 indica un lugar libre.
  • 🚗 indica un lugar ocupado.

2. Buscar mi estacionamiento

La función buscarestacionamiento() solicita la patente del vehículo y muestra su información si se encuentra registrada:

def buscarestacionamiento():
    print("Buscar mi estacionamiento")
    patente=input("Ingrese patente:").upper()
    if patente in listaestacionados:
        infoestacionamiento=listaestacionados[patente]
        print("Informacion del estacionamiento:")
        print(f"Patente: {patente}")
        print(f"Nombre: {infoestacionamiento['nombre']}")
        print(f"Cantidad de minutos: {infoestacionamiento['cantidadminutos']}")
        print(f"Fila: {infoestacionamiento['fila']}")
        print(f"Letra: {infoestacionamiento['letra']}")
    else:
        print("Patente no encontrada")

3. Pagar y salir

La función pagarysalir() calcula el monto a pagar según los minutos estacionados ($30 por minuto), valida que el pago sea suficiente y libera el lugar ocupado:

def pagarysalir():
    print("PAGAR---")
    patente=input("Ingrese patente:").upper()
    if patente in listaestacionados:
        infoestacionamiento=listaestacionados[patente]
        print("Informacion del estacionamiento:")
        print(f"Patente: {patente}")
        print(f"Nombre: {infoestacionamiento['nombre']}")
        print(f"Cantidad de minutos: {infoestacionamiento['cantidadminutos']}")
        print(f"Fila: {infoestacionamiento['fila']}")
        print(f"Letra: {infoestacionamiento['letra']}")
        totalapagar=(infoestacionamiento['cantidadminutos']*30)
        print(f"La cantidad a pagar es de ${totalapagar}")
        int(totalapagar)
        while True:
            pago=int(input("Ingrese pago : $"))
            if pago>=totalapagar:
                fila=infoestacionamiento['fila']
                letra=infoestacionamiento['letra']
                print("Pago realizado correctamente!!!")
                estacionamiento[fila-1,letras.index(letra)]=None
                return
            else:
                print("Dinero insuficiente")
    else:
        print("Patente no encontrada")

Consideraciones

  • Las variables estacionamiento, listaestacionados y letras deben estar definidas previamente en el programa.
  • La función pagarysalir() repite la solicitud de pago hasta que el monto ingresado sea suficiente.

Entradas relacionadas: