BaşlayınÜcretsiz Başlayın

* ve zip kullanarak 'unzip' yapmak

zip()'i nasıl kullanacağını ve bir zip nesnesinden değerleri nasıl yazdıracağını biliyorsun. Harika!

Hadi zip() ile biraz daha oynayalım. zip()'in yaptığının tersini yapan bir unzip fonksiyonu yok. Ancak *'ten biraz yardım alarak yine zip() kullanıp birlikte ziplenmiş olanları tersine çevirebiliriz! *, bir fonksiyon çağrısında, liste veya demet (tuple) gibi bir iterable’ı konumsal argümanlara açar.

Bu egzersizde, zip() tarafından üretilen demetleri, zip() çağrısında * kullanarak açacaksın.

İki metin demeti olan mutants ve powers önceden yüklendi.

Bu egzersiz

Python Araç Kutusu

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • mutants ve powers üzerinde, bu sırayla, zip() kullanarak bir zip nesnesi oluştur. Sonucu z1'e ata.
  • print() çağrısında * operatörünü kullanarak, z1 içindeki demetleri konumsal argümanlara açıp yazdır.
  • Önceki print() çağrısı z1 içindeki öğeleri tüketmiş olacağından, daha önce tanımladığın zip nesnesini yeniden oluştur ve sonucu tekrar z1'e ata.
  • z1 içindeki demetleri, bir zip() çağrısında * operatörünü kullanarak konumsal argümanlara açıp 'unzip' yap. Sonuçları, bu sırayla, result1 ve result2'ye ata.
  • Son print() ifadeleri, result1 ile mutants'ı ve result2 ile powers'ı karşılaştırmanın çıktısını yazdırır. Açılmış result1 ve result2'nin sırasıyla mutants ve powers ile eşdeğer olup olmadığını görmek için Submit Answer'a tıkla.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# 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)
Kodu Düzenle ve Çalıştır