CommencerCommencer gratuitement

Vitesse des boucles

Bien entendu, set est mieux adapté à la recherche d'éléments. Il est basé sur des hachages, vous pouvez donc vous attendre à une complexité constante la plupart du temps. Mais qu'en est-il de l' itération sur tous les éléments de l'objet ? Comparons la vitesse d'itération de la boucle sur les éléments de list et set avec pytest et pytest-benchmark. Le paquet pytest a déjà été importé.

Cet exercice fait partie du cours

Introduction aux tests en Python

Afficher le cours

Instructions

  • Ajoutez le décorateur @benchmark avant les fonctions commençant par iterate_.
  • Complétez les boucles dans iterate_list et iterate_set.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

def test_list(benchmark):
	# Add decorator here
    @____
    def iterate_list():
		# Complete the loop here
        ____ in [i for i in range(1000)]:
            pass

def test_set(benchmark):
	# Add decorator here
    ____
    def iterate_set():
        # Complete the loop here
        ____ in {i for i in range(1000)}:
            pass
Modifier et exécuter le code