LoslegenKostenlos loslegen

Verwenden von * und zip zum „Entzippen“

Du weißt, wie man zip() verwendet und wie man Werte aus einem zip-Objekt ausgibt. Ausgezeichnet!

Spielen wir noch ein bisschen mit zip() herum. Es gibt keine unzip-Funktion, mit der du das Gegenteil von dem tun kannst, was zip() tut. Wir können jedoch umkehren, was zusammengezipppt wurde, indem wir zip() mit ein wenig Hilfe von * verwenden! * entpackt ein Iterable wie eine Liste oder ein Tupel in Positionsargumente in einem Funktionsaufruf.

In dieser Aufgabe wirst du * in einem Aufruf an zip() verwenden, um die von zip() erzeugten Tupel zu entpacken.

Zwei Tupel von Strings, mutants und powers, wurden vorgeladen.

Diese Übung ist Teil des Kurses

Python Toolbox

Kurs anzeigen

Anleitung zur Übung

  • Erstelle ein zip-Objekt, indem du zip() auf mutants und powers verwendest, in dieser Reihenfolge. Weise das Ergebnis z1 zu.
  • Gib die Tupel in z1 aus, indem du sie mit dem *-Operator in einem print()-Aufruf in Positionsargumente entpackst.
  • Da der vorherige Aufruf von print() die Elemente in z1 erschöpft hätte, erstellst du das zuvor definierte zip-Objekt neu und weist das Ergebnis erneut z1 zu.
  • ‚Entpacke‘ die Tupel in z1, indem du sie mit dem *-Operator in einem zip()-Aufruf in Positionsargumente entpackst. Weise die Ergebnisse result1 und result2 zu, in dieser Reihenfolge.
  • Die letzte print()-Anweisung gibt die Ergebnisse des Vergleichs von result1 mit mutants und result2 mit powers aus. Klicke auf Submit Answer, um zu sehen, ob die entpackten result1 und result2 mit mutants bzw. powers übereinstimmen.

Interaktive Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# 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 bearbeiten und ausführen