Aan de slagGa gratis aan de slag

Snelheid van lussen

Natuurlijk is set beter geschikt voor het zoeken van elementen. Het is gebaseerd op hashes, dus je kunt meestal een constante complexiteit verwachten. Maar hoe zit het met itereren over alle elementen van het object? Laten we de snelheid van lus-iteratie over de elementen van list en set vergelijken met pytest en pytest-benchmark. Het pakket pytest is al geïmporteerd.

Deze oefening maakt deel uit van de cursus

Introductie tot testen in Python

Cursus bekijken

Oefeninstructies

  • Voeg de decorator @benchmark toe vóór de functies die beginnen met iterate_.
  • Maak de lussen in iterate_list en iterate_set af.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

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
Code bewerken en uitvoeren