web-dev-qa-db-fra.com

Quelle unité de temps timeit revient-il?

Je ne sais pas comment interpréter la sortie de la fonction timeit.timeit () de Python. Mon code est le suivant:

import timeit

setup = """
import pydash
list_of_objs = [
    {},
    {'a': 1, 'b': 2, 0: 0},
    {'a': 1, 'c': 1, 'p': lambda x: x}
]
"""
print(timeit.timeit("pydash.filter_(list_of_objs, {'a': 1})", setup=setup))

La sortie de ceci est 11.85382745500101. Comment interpréter ce nombre?

26
nivix zixer

La valeur de retour est secondes en tant que flottant.

C'est le temps total pris pour exécuter le test (sans compter la configuration), donc le temps moyen par test est ce nombre divisé par l'argument number, par défaut à 1 million.

Voir la documentation Time.timeit() :

Heure nombre exécutions de l'instruction principale. Cela exécute l'instruction de configuration une fois, puis renvoie le temps nécessaire à l'exécution de l'instruction principale un certain nombre de fois, mesuré en secondes sous forme de flottant . L'argument est le nombre de fois dans la boucle, par défaut à un million.

40
Martijn Pieters