python-time
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédente | |||
python-time [2015/01/05 09:03] – luc | python-time [2018/10/13 20:32] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ===== Le temps et python ===== | ||
+ | Pourquoi voudrait-on mesurer le temps dans python ?\\ | ||
+ | * pour savoir quelle heure il est ? | ||
+ | * pour mesurer le temps d’exécution d'un script (dans le but de le comparer à d' | ||
+ | |||
+ | ==== le module time ==== | ||
+ | |||
+ | <code python> | ||
+ | import time | ||
+ | |||
+ | start = time.time() | ||
+ | |||
+ | res = 0 | ||
+ | |||
+ | for i in range(10000): | ||
+ | |||
+ | res += i**3.4 | ||
+ | |||
+ | print(time.time() - start) | ||
+ | </ | ||
+ | |||
+ | Le seul problème, c'est que ce n'est pas très précis pour les petites durées (de l' | ||
+ | |||
+ | ==== %timeit de iPython ==== | ||
+ | |||
+ | Bon d' | ||
+ | et nécessite que le code à tester soit dans une fonction.\\ | ||
+ | Mais c'est plus précis pour les petites durées, comme dans l' | ||
+ | |||
+ | <code python> | ||
+ | def tri_rapide(liste): | ||
+ | # mes opérations | ||
+ | sort(liste) # là je triche car la fonction est hyperoptimisée | ||
+ | |||
+ | %timeit tri_rapide(rnd.randrange(1E9)) | ||
+ | |||
+ | # => 100000 loops, best of 3: 4.47 us per loop | ||
+ | </ |