Python Timeit() avec des exemples
Qu'est-ce que Python Timeit() ?
Python timeit() est une méthode de la bibliothèque Python pour mesurer le temps d'exécution pris par l'extrait de code donné. La bibliothèque Python exécute l'instruction de code 1 million de fois et fournit le temps minimum pris à partir de l'ensemble donné d'extraits de code. Python timeit() est une méthode utile qui aide à vérifier les performances du code.
Syntaxe :
timeit.timeit(stmt, setup,timer, number)
Paramètres
- stmt :Cela prendra le code dont vous voulez mesurer le temps d'exécution. La valeur par défaut est "pass".
- configuration :Cela aura des détails de configuration qui doivent être exécutés avant stmt. La valeur par défaut est "réussi".
- minuterie :Cela aura la valeur de la minuterie, timeit() a déjà une valeur par défaut définie, et nous pouvons l'ignorer.
- numéro :Le stmt s'exécutera selon le nombre indiqué ici. La valeur par défaut est 1000000.
Pour travailler avec timeit(), nous devons importer le module, comme indiqué ci-dessous :
import timeit
Premier exemple
Voici un exemple simple de la fonction timeit()
Exemple de code 1 :
# testing timeit() import timeit print(timeit.timeit('output = 10*5'))
Sortie :
0.06127880399999999
Nous avons vu un exemple simple qui nous donne le temps d'exécution de l'instruction de code simple output =10*5, et le temps nécessaire pour l'exécuter est de 0,06127880399999999.
Timing Plusieurs lignes en code python
Il y en a deux que vous pouvez exécuter plusieurs lignes de code dans timeit.timeit(), en utilisant un point-virgule ou en enregistrant le code inclus sous forme de chaîne avec des guillemets triples.
Voici des exemples qui en montrent le fonctionnement.
Exemple 1 :Utilisation d'un point-virgule
import timeit print("The time taken is ",timeit.timeit(stmt='a=10;b=10;sum=a+b'))
Sortie :
The time taken is 0.137031482
Exemple 2 :Utilisation de triples guillemets
import timeit import_module = "import random" testcode = ''' def test(): return random.randint(10, 100) ''' print(timeit.repeat(stmt=testcode, setup=import_module))
Sortie :
C:\pythontest>python testtimeit.py The time taken is 0.182619178
timeit – Méthodes :
Voici 2 méthodes timeit importantes
timeit.default_timer() :Cela renverra l'heure par défaut lors de l'exécution.
timeit.repeat(stmt, setup, timer, repeat, number) :identique à timeit() , mais avec repeat le timeit() est appelé le nombre de fois que repeat est donné.
Exemple de programme 1 :
# testing timeit() import timeit import_module = "import random" testcode = ''' def test(): return random.randint(10, 100) ''' print(timeit.timeit(stmt=testcode, setup=import_module))
Sortie :
0.46715912400000004
Exemple 2 :
default_timer() Exemple
# testing timeit() import timeit import random def test(): return random.randint(10, 100) starttime = timeit.default_timer() print("The start time is :",starttime) test() print("The time difference is :", timeit.default_timer() - starttime)
Sortie :
The start time is : 0.220261875 The time difference is : 0.0004737320000000045
Exemple 3 :timeit.repeat()
# testing timeit() import timeit import_module = "import random" testcode = ''' def test(): return random.randint(10, 100) ''' print(timeit.repeat(stmt=testcode, setup=import_module, repeat=5))
Sortie :
[0.43638873, 0.5040939680000001, 0.5069179909999999, 0.3943449330000002, 0.3546886979999999]
timeit.repeat() fonctionne de manière similaire à la fonction timeit.timeit(), avec la seule différence qu'il prend dans l'argument de répétition et renvoie le temps d'exécution sous forme de tableau avec des valeurs selon le nombre de répétitions.
Exécution de la fonction de temporisation timeit.timeit() dans l'interface de ligne de commande
La syntaxe pour exécuter votre fonction dans timeit() sur la ligne de commande est la suivante :
python -m timeit [-n N] [-r N] [-s S] [-t] [-c] [-h] [code statement ...]
Paramètres de la ligne de commande :
- -n N :le nombre de fois que vous voulez que le code s'exécute.
- -r N :le nombre de fois que vous voulez que la fonction timeit() se répète
- -s S :cela contiendra des détails de configuration qui seront exécutés avant l'exécution du code.
- -t :pour cela, vous pouvez utiliser time.time()
- -c :pour cela, vous pouvez utiliser time.clock()
- -h :pour obtenir de l'aide
- déclaration de code :les détails du code.
Exemple :
C:\pythontest>python -m timeit -s 'text="hello world"' 20000000 loops, best of 5: 13.1 nsec per loop
Une autre façon d'exécuter à l'intérieur de la ligne de commande est comme indiqué ci-dessous :
Exemple :
>>> import timeit >>> print("The time taken is ",timeit.timeit(stmt='a=10;b=10;sum=a+b')) The time taken is 0.15048536300000137 >>>
Pourquoi timeit() est-il le meilleur moyen de mesurer le temps d'exécution du code Python ?
Voici quelques raisons pour lesquelles nous considérons que timeit() est le meilleur moyen de mesurer le temps d'exécution.
- Il exécute l'instruction de code 1 million de fois qui est la valeur par défaut, et à partir de là, il vous renverra le temps minimum pris. Vous pouvez également augmenter/diminuer le 1 million en définissant le nombre d'arguments dans la fonction time().
- Pendant l'exécution du test, la récupération de place est désactivée à chaque fois par la fonction time().
- timeit() prend en interne l'heure exacte selon votre système d'exploitation utilisé. Par exemple, il utilisera time.clock() pour le système d'exploitation Windows et time.time() pour mac et Linux.
Résumé
Timeit() est utilisé pour obtenir le temps d'exécution pris pour le petit code donné
Paramètres utilisés avec timeit()
- stmt :Cela prendra le code dont vous voulez mesurer le temps d'exécution
- setup :cela contiendra des détails de configuration qui doivent être exécutés avant stmt
- timer :cela aura la valeur de la minuterie, timeit() a déjà une valeur par défaut définie, et nous pouvons l'ignorer.
- numéro :le stmt s'exécutera selon le numéro indiqué ici.
Python
- Python Obtenir l'heure actuelle
- Python String count() avec des EXEMPLES
- Python String format() Expliquer avec des EXEMPLES
- Méthode Python String find() avec exemples
- Fonctions Python Lambda avec EXEMPLES
- Fonction Python round() avec EXEMPLES
- Fonction Python map() avec EXEMPLES
- Compteur Python dans les collections avec exemple
- type() et isinstance() en Python avec des exemples