開始使用免費開始

使用 zip

你學到的另一個有趣函式是 zip()。它可以接收任意數量的可疊代物件,並回傳一個 zip 物件,該物件是由 tuple 組成的疊代器。若想列印 zip 物件中的值,可以先把它轉成清單再列印。直接列印 zip 物件本身不會得到內容值,除非先把它解包。在這個練習中,你會自己動手體會這些差異。

我們已預先載入三個字串清單:mutantsaliasespowers。你會先用 list() 搭配 zip() 把這三個清單轉成由 tuple 組成的清單。接著,用 zip() 建立一個 zip 物件。最後,在 for 迴圈中解包這個 zip 物件,列印每個 tuple 的值。請觀察以下三種輸出之間的差異:先列印由 tuple 組成的清單、再列印 zip 物件本身、最後在 for 迴圈中列印逐一取出的 tuple 值。

本練習屬於課程

Python 工具箱

檢視課程

練習說明

  • 使用 zip() 搭配 list(),從 mutantsaliasespowers 這三個清單(依此順序)建立一個由 tuple 組成的「清單」,並將結果指定給 mutant_data
  • 使用 zip(),從 mutantsaliasespowers 這三個清單建立一個名為 mutant_zip 的「zip 物件」。
  • 完成 for 迴圈:解包你建立的 zip 物件並列印各個 tuple 的值。請依序使用 value1value2value3 來對應 mutantsaliasespowers 的值。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Create a list of tuples: mutant_data
mutant_data = ____

# Print the list of tuples
print(mutant_data)

# Create a zip object using the three lists: mutant_zip
mutant_zip = ____

# Print the zip object
print(mutant_zip)

# Unpack the zip object and print the tuple values
for ____ in ____:
    print(value1, value2, value3)
編輯並執行程式碼