[Python] Gestione del tempo.

Manlio Perillo manlio.perillo a gmail.com
Sab 28 Dic 2013 13:59:27 CET


On 19/12/2013 15:41, Gabriele Battaglia wrote:
> Ciao a tutti, ben riletti dopo molto tempo e auguri di buone feste a voi
> e famiglie.
>
> [...]
> Progetto, sviluppare una piccola applicazione console, sotto Windows,
> con Python 2.7, che faccia da orologio per giocare a scacchi.
>
> La faccenda č presto detta: 2 timer partono da un tempo definibile
> dall'utente e scendono verso lo zero. Questi due clock si esprimono in
> ore, minuti, secondi.
 > [...]
> Prima domanda: come fareste voi, a fare aggiornare le variabili degli
> orologi?

Dipende dal sistema operativo che usi.

> In alcuni linguaggi, ricordo che si legava un evento allo scorrere del
> tempo, tipo On Time Goto e poi non ci si pensava pių, allo scadere
> dell'intervallo specificato, il codice veniva eseguito.
> Qui dovrei controllare time.clock() e, se superiore di un tot a quella
> letta la volta precedente, chiamo il metodo delloggetto orologio che ne
> aggiorna le variabili, giusto?
>

Ci sono molte solutioni:

1) SIGALARM su sistemi UNIX
2) ciclo su select con timeout, e aggiorni il tempo con time.clock
3) usi il timer messo a disposizione dal sistema operativo
4) usi il timer messo a disposizione dal tuo framework preferito

> Domanda 2: secondo voi, conviene realizzarlo ad oggetti, anche come
> palestra, o meglio farlo come una procedura?
>

E' la stessa cosa; non cambia niente nel tuo caso.
Usa quello che ti piace di pių.

> Terza domanda, dovendo stampare i valori dei clocks nella console, come
> faccio a scriverli sempre sulla stessa riga evitando cosė di riempire la
> console con due colonne di cifre che scorrono verso l'alto?
>

Su sistemi UNIX puoi usare curses.
Ma ci sono anche altri modi pių semplici e limitati.


Ciao  Manlio


Maggiori informazioni sulla lista Python