使用Python的zip()函數將多個序列結合為一個序列

Python 中的 zip() 函數

Python 中的 zip() 函數可以將多個序列組合成一個新的序列。它可以接受任意多個序列作為參數,然後返回一個對應的迭代器。

zip() 函數的基本用法如下:

list1 = [1, 2, 3]
list2 = [4, 5, 6]

zipped = zip(list1, list2)

print(list(zipped))
# [(1, 4), (2, 5), (3, 6)]

在上面的示例中,我們將兩個列表 list1 和 list2 作為參數傳遞給 zip() 函數,然後將返回的迭代器轉換為列表,得到的結果是一個包含元組的列表,每個元組包含了兩個列表中對應位置的元素。

另外,zip() 函數也可以接受多於兩個序列作為參數,並且會返回一個元組的列表,其中每個元組包含了所有序列中對應位置的元素:

list1 = [1, 2, 3]
list2 = [4, 5, 6]
list3 = [7, 8, 9]

zipped = zip(list1, list2, list3)

print(list(zipped))
# [(1, 4, 7), (2, 5, 8), (3, 6, 9)]

此外,zip() 函數也可以接受可迭代對象作為參數,而不僅僅是列表:

string1 = "ABC"
string2 = "DEF"

zipped = zip(string1, string2)

print(list(zipped))
# [('A', 'D'), ('B', 'E'), ('C', 'F')]

最後,zip() 函數也可以接受兩個以上的可迭代對象:

string1 = "ABC"
list1 = [1, 2, 3]

zipped = zip(string1, list1)

print(list(zipped))
# [('A', 1), ('B', 2), ('C', 3)]

總結來說,Python 中的 zip() 函數可以接受任意多個序列或可迭代對象作為參數,然後返回一個對應的迭代器,可以讓我們將多個序列或可迭代對象組合成一個新的序列。

發佈留言