Comment puis-je utiliser le module « timeit » de Python pour mesurer le temps d'exécution des segments de code ?

Mary-Kate Olsen
Libérer: 2024-11-04 21:49:01
original
444 Les gens l'ont consulté

How can I use Python's `timeit` module to measure the execution time of code segments?

Mesurer le temps d'exécution du code à l'aide de Python timeit

En Python, quantifier la durée d'exécution des segments de code est crucial pour les tests de performances. Cet article explique comment exploiter le module timeit de Python pour cette tâche.

Exemple de cas d'utilisation

Considérez le script Python suivant qui exécute plusieurs requêtes sur une base de données :

<code class="python">conn = ibm_db.pconnect("dsn=myDB", "usrname", "secretPWD")
for r in range(5):
    print "Run %s\n" % r
    query_stmt = ibm_db.prepare(conn, update)
    ibm_db.execute(query_stmt)
ibm_db.close(conn)</code>
Copier après la connexion

Pour mesurer le temps d'exécution des requêtes, nous pouvons utiliser le module timeit de Python.

Utiliser timeit

Étape 1 : Importer le Module timeit

<code class="python">import timeit</code>
Copier après la connexion

Étape 2 : Définir le code à Time

Créer une chaîne ou une fonction qui encapsule le code dont le temps d'exécution doit être mesuré :

<code class="python">setup_code = """
import ibm_db
conn = ibm_db.pconnect("dsn=myDB","usrname","secretPWD")
query_stmt = ibm_db.prepare(conn, update)
"""

code_to_time = """
ibm_db.execute(query_stmt)
"""</code>
Copier après la connexion

Étape 3 : Définir les paramètres de configuration

Spécifiez le nombre de répétitions et d'itérations pour la fonction timeit :

<code class="python">repetitions = 5
iterations = 100</code>
Copier après la connexion

Étape 4 : Mesurer le temps d'exécution

<code class="python">timeit_result = timeit.timeit(code_to_time, setup=setup_code, number=iterations, globals=globals())</code>
Copier après la connexion

Étape 5 : Afficher le résultat

<code class="python">print("Execution time:", timeit_result)</code>
Copier après la connexion

Considérations supplémentaires

  • Pour des mesures précises, assurez-vous que le code à chronométrer s'exécute plusieurs fois au cours de l'itération.
  • Pour un timing précis sous Linux, utilisez time.clock() au lieu de time .time().
  • Pythons timeit fournit des options pour définir différentes minuteries et gérer la configuration des répétitions, permettant une personnalisation pour des besoins spécifiques.

En suivant ces étapes, vous pouvez chronométrer avec précision les segments de code temporel. dans vos scripts Python et obtenez un aperçu de leurs caractéristiques de performances.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!