Bonjour à tous,
Je suis en train de faire quelques petits exos en python, et j'aimerais mesurer les temps d'exécution de mes fonctions.

Pour mesurer le temps d'exécution j'utilise timeit:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
import timeit
def primeIteratif(a,b):
    n=0
    lTmp=range(2,b+1)
    while n < len(lTmp):
        for i in lTmp:
            if i % lTmp[n] == 0 and i != lTmp[n]:
                lTmp.remove(i)
        n += 1
    return [n,lTmp]
 
print timeit.timeit('primeIteratif(2,100)',setup='from __main__ import primeIteratif')
Lorsque j'exécute ce code, j'ai:

Pourtant, si j'exécute ma fonction primeIteratif(2,100) sans le timeit, le temps d'exécution est très rapide (largement moins d'1s).

Que pasa???