Aan de slagGa gratis aan de slag

Met * en zip 'unzippen'

Je weet hoe je zip() gebruikt en hoe je waarden uit een zip-object print. Top!

Laten we nog wat verder spelen met zip(). Er is geen aparte functie om het omgekeerde van zip() te doen. We kunnen echter wel ongedaan maken wat is 'gezipd' door zip() te gebruiken met een beetje hulp van *! * pakt een iterable zoals een lijst of tuple uit naar positionele argumenten in een functieaanroep.

In deze oefening gebruik je * in een aanroep van zip() om de tuples uit te pakken die door zip() zijn geproduceerd.

Twee tuples met strings, mutants en powers, zijn al voor je ingeladen.

Deze oefening maakt deel uit van de cursus

Python-gereedschapskist

Cursus bekijken

Oefeninstructies

  • Maak een zip-object door zip() te gebruiken op mutants en powers, in die volgorde. Ken het resultaat toe aan z1.
  • Print de tuples in z1 door ze uit te pakken naar positionele argumenten met de *-operator in een print()-aanroep.
  • Omdat de vorige print()-aanroep de elementen in z1 heeft uitgeput, maak je het zip-object dat je eerder definieerde opnieuw en ken je het resultaat weer toe aan z1.
  • 'Unzip' de tuples in z1 door ze uit te pakken naar positionele argumenten met de *-operator in een zip()-aanroep. Ken de resultaten toe aan result1 en result2, in die volgorde.
  • De laatste print()-statements printen de uitvoer van het vergelijken van result1 met mutants en result2 met powers. Klik op Antwoord verzenden om te zien of de uitgepakte result1 en result2 overeenkomen met respectievelijk mutants en powers.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Create a zip object from mutants and powers: z1
z1 = ____

# Print the tuples in z1 by unpacking with *
print(____)

# Re-create a zip object from mutants and powers: z1
z1 = ____

# 'Unzip' the tuples in z1 by unpacking with * and zip(): result1, result2
result1, result2 = ____

# Check if unpacked tuples are equivalent to original tuples
print(result1 == mutants)
print(result2 == powers)
Code bewerken en uitvoeren