Introduzione
Il modulo time presenta un'interfaccia alle funzioni per la gestione del tempo presenti sul sistema su cui gira il programma.
Questa pagina non è una guida completa al modulo, ma solo una piccola panoramica sulle funzioni principali.
time.time()
Questa funzione restituisce il tempo attuale espresso in secondi dall'UTC. Viene spesso utilizzata per recuperare il tempo in più punti del programma e successivamente ricavarne, ad esempio, il tempo trascorso eseguendone la differenza.
1 import time
2 print time.time()
3
4 >>>
5 1292533474.62
6 >>>
7
time.ctime(secs)
Accetta come argomento i secondi dall'UTC e ritorna una stringa contenente la data con il formato "giorno_settimana mese giorno ora anno". Se non è specificato niente, ritorna la data corrente.
1 import time
2 print 'data odierna: ',time.ctime()
3 print 'data 0: ', time.ctime(0)
4
5 >>>
6 data odierna: Fri Dec 17 13:13:59 2010
7 data 0: Thu Jan 1 01:00:00 1970
8 >>>
9
time.sleep(secs)
La funzione time.sleep(secs) interrompe l'esecuzione del programma per i secondi specificati prima di passare all'istruzione successiva.
1 import time
2 start_time = time.time()
3 time.sleep(5)
4 stop_time = time.time()
5 print 'sono passati', stop_time - start_time, 'secondi'
6
7 >>>
8 sono passati 5.00634598732 secondi
9 >>>
10
time.localtime(secs)
La funzione time.localtime(secs) restituisce un oggetto <time.struct_time> molto simile a una tupla con il formato (anno, mese, giorno, ora, minuti, secondi, giorno della settimana, ora legale/solare). L'argomento secs deve essere espresso in secondi dall'UTC, ed è di default il valore attuale.
1 import time
2
3 time = time.localtime()
4 year = time[0]
5 month = time[1]
6 day = time[2]
7 hour = time[3]
8 minutes = time[4]
9
10 print 'data:', day,month,year, ' ora:', hour, minutes
11
12 >>>
13 data: 16 12 2010 ora: 21 24
14 >>>
15
Esempi
file chronometer.py
1 """un semplice cronometro in python sfruttando il modulo time"""
2 import time
3 class Chronometer():
4 """start(), stop(), show_time()"""
5 def __init__(self):
6 self.start_time = 0.0
7 self.stop_time = 0.0
8
9 def start(self):
10 """start the cronometre"""
11 self.start_time = time.time()
12
13 def stop(self):
14 """stop the cronometre"""
15 self.stop_time = time.time()
16
17 def show_time(self):
18 """show the last time"""
19 return self.stop_time - self.start_time
20
21 chr = Chronometer()
22 while 1:
23 raw_input('premere invio per avviare il cronometro')
24 chr.start()
25 raw_input('premere invio per interrompere il cronometro')
26 chr.stop()
27 print 'tempo registrato:', chr.show_time()
28 print ''
29
file clock.py
1 """un semplice orologio in python sfruttando il modulo time"""
2 import time
3
4 def loop():
5 sec = 0
6 while 1:
7 sys.stdout.write('\b'+ str(sec))
8 sys.stdout.flush()
9 sec += 1
10 time.sleep(1)
11
12 loop()
13
Ulteriori risorse
documentaione in italiano http://docs.python.it/html/lib/module-time.html
documentazione ufficiale in lingua inglese http://docs.python.org/library/time.html
