Comment mesurer le temps écoulé en Python ?
Mesurer le temps écoulé est crucial pour optimiser votre code Python et analyser les goulots d'étranglement des performances. Une approche populaire est le module timeit, mais rencontrer des défis avec cette méthode est assez courant.
Si vous rencontrez des problèmes avec timeit, une approche alternative consiste à utiliser le module time. Au lieu d'utiliser timeit.timeit(), vous pouvez utiliser directement time.time() pour mesurer le temps d'horloge murale écoulé entre deux points :
import time start = time.time() print("hello") end = time.time() print(end - start)
Cet extrait de code montre comment calculer le temps nécessaire pour le print("hello") opération en secondes.
Pour les besoins de synchronisation avancés, envisagez d'utiliser perf_counter ou process_time, devenus disponibles dans Python 3.3. Avant cette version, time.clock était recommandé, mais est désormais obsolète. L'extrait suivant de la documentation met en évidence son remplacement :
"Sous Unix, cette fonction renvoie le temps actuel du processeur sous forme d'un nombre à virgule flottante exprimé en secondes. La précision, et de fait la définition même du sens de " temps processeur", dépend de celui de la fonction C du même nom."
"Sous Windows, cette fonction renvoie les secondes d'horloge écoulées depuis le premier appel à cette fonction, sous forme de nombre à virgule flottante, basé sur sur le Fonction Win32 QueryPerformanceCounter(). La résolution est généralement meilleure qu'une microseconde."
"Obsolète depuis la version 3.3 : le comportement de cette fonction dépend de la plateforme : utilisez plutôt perf_counter() ou process_time(), selon vos besoins, pour avoir un comportement bien défini."
En employant les approches alternatives présentées, vous pouvez mesurer efficacement le temps écoulé dans vos scripts Python et affiner leurs performances en conséquence.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!