內置函數zip()
通過聚合給定的 iterable 返回一個元組或壓縮對象,它可能有零個或多個 iterable 作為其參數。
**zip(*iterables)** #where iterable may be list, string, dict etc
zip()
參數:
它可能使用一個或多個迭代器作為參數。*運算符可用於將列表與zip()
一起解壓縮。
參數 | 描述 | 必需/可選 |
---|---|---|
可重複的 | 可以是內置的 iterable(如:list、string、dict)或用戶定義的 iterable | 需要 |
zip()
返回值
zip()
沒有參數,那麼結果將是一個包含空迭代器的 zip 變數。
| 投入 | 返回值 |
| 單一可滴定的 | 具有單個元素的元組 |
| 多項 | 具有來自所有表的元素的元組 |
Python 中zip()
方法的示例
示例zip()
在 Python 中是如何工作的
number_list = [5, 6, 7]
string_list = ['five', 'six', 'seven']
# No iterables are passed
result = zip()
# Converting iterator to list
result_list = list(result)
print(result_list)
# Two iterables are passed
result = zip(number_list, string_list)
# Converting iterator to set
result_set = set(result)
print(result_set)
輸出:
[]
{(7, 'seven'), (6, 'six'), (5, 'five')}
示例 2:不同數量的可迭代元素
numbers_List = [5, 6, 7]
string_list = ['five', 'six']
numbers_tuple = ('FIVE', 'SIX', 'SEVEN', 'EIGHT')
# Notice, the size of numbersList and numbers_tuple is different
result = zip(numbers_List, numbers_tuple)
# Converting to set
result_set = set(result)
print(result_set)
result = zip(numbers_List, string_list, numbers_tuple)
# Converting to set
result_set = set(result)
print(result_set)
輸出:
{(7, 'SEVEN'), (6, 'SIX'), (5, 'FIVE')}
{(6, 'six', 'SIX'), (5, 'five', 'FIVE')}
示例 3:如何使用zip()
解壓縮該值
coordinates = ['x', 'y', 'z']
values = [1, 2, 3]
result = zip(coordinates, values)
result_list = list(result)
print(result_list)
c, v = zip(*result_list)
print('c =', c)
print('v =', v)
輸出:
[('x', 1), ('y', 2), ('z', 3)]
c = ('x', 'y', 'z')
v = (1, 2, 3)
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/247482.html