Kom igångKom igång gratis

Använda * och zip för att 'packa upp'

Nu kan du använda zip() och skriva ut värden från ett zip-objekt. Bra jobbat!

Låt oss utforska zip() lite till. Det finns ingen unzip-funktion för att vända på det som zip() gör. Däremot kan vi vända på det som har paketerats med zip() genom att använda zip() tillsammans med *! * packar upp ett itererbart objekt, till exempel en lista eller en tupel, som positionsargument i ett funktionsanrop.

I den här övningen använder du * i ett anrop till zip() för att packa upp tuplerna som zip() producerar.

Två tuplar med strängar, mutants och powers, har laddats in i förväg.

Den här övningen är en del av kursen

Python Toolbox

Visa kurs

Övningsinstruktioner

  • Skapa ett zip-objekt genom att använda zip()mutants och powers, i den ordningen. Tilldela resultatet till z1.
  • Skriv ut tuplerna i z1 genom att packa upp dem som positionsargument med *-operatorn i ett print()-anrop.
  • Eftersom det föregående print()-anropet har tömt elementen i z1, återskapa det zip-objekt du definierade tidigare och tilldela resultatet till z1 igen.
  • 'Packa upp' tuplerna i z1 genom att använda *-operatorn i ett zip()-anrop. Tilldela resultaten till result1 respektive result2, i den ordningen.
  • Den sista print()-satsen skriver ut resultatet av att jämföra result1 med mutants och result2 med powers. Klicka på Skicka in svar för att se om de uppackade result1 och result2 är ekvivalenta med mutants respektive powers.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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)
Redigera och kör kod