Conto alla Rovescia con Python

Descrizione del Progetto

In questo progetto, realizzerai un conto alla rovescia utilizzando Python. Il programma permetterà di specificare il tempo del conto alla rovescia e visualizzare il tempo rimanente fino allo scadere.

Requisiti

  1. Librerie Python: Utilizzare la libreria time per gestire il tempo.
  2. Interfaccia Utente: Creare una semplice interfaccia utente a riga di comando che permetta all’utente di specificare il tempo del conto alla rovescia.
  3. Conto alla Rovescia:
    • Specificare il tempo in secondi.
    • Visualizzare il tempo rimanente in un formato leggibile.
    • Notificare quando il conto alla rovescia è terminato.

Passaggi

  1. Importare la Libreria Time: Utilizzare la libreria time per gestire il tempo.
  2. Creazione del Programma:
    • Chiedere all’utente di specificare il tempo del conto alla rovescia in secondi.
    • Contare alla rovescia e visualizzare il tempo rimanente ogni secondo.
    • Notificare l’utente quando il conto alla rovescia è terminato.

Esempio di Codice

import time

def countdown(seconds):
    while seconds:
        mins, secs = divmod(seconds, 60)
        timeformat = '{:02d}:{:02d}'.format(mins, secs)
        print(timeformat, end='\r')
        time.sleep(1)
        seconds -= 1

    print("Tempo scaduto!")

def main():
    print("Conto alla Rovescia")

    while True:
        try:
            seconds = int(input("Inserisci il tempo del conto alla rovescia in secondi: "))
            if seconds <= 0:
                print("Il tempo deve essere maggiore di zero.")
                continue

            countdown(seconds)

        except ValueError:
            print("Inserisci un numero valido.")

        another = input("Vuoi impostare un altro conto alla rovescia? (s/n): ").lower()
        if another != 's':
            break

if __name__ == "__main__":
    main()

Istruzioni per l’Esecuzione

  1. Salva il codice in un file: Ad esempio conto_alla_rovescia.py.
  2. Esegui il programma:
    python conto_alla_rovescia.py
    
  3. Interazione con l’utente:
    • Segui le istruzioni per inserire il tempo del conto alla rovescia in secondi.
    • Visualizza il tempo rimanente in formato MM:SS.
    • Il programma notificherà quando il conto alla rovescia è terminato.
    • Decidi se impostare un altro conto alla rovescia o terminare il programma.

Estensioni Possibili

  1. Interfaccia Grafica: Utilizzare una libreria come tkinter per creare un’interfaccia grafica per il conto alla rovescia.
  2. Suono di Notifica: Aggiungere un suono di notifica quando il conto alla rovescia è terminato utilizzando una libreria come playsound.
  3. Multipli Conti alla Rovescia: Implementare la possibilità di gestire multipli conti alla rovescia contemporaneamente.