Python zip函數(shù)
一.zip函數(shù)描述和使用
zip()?函數(shù)用于將可迭代的對象作為參數(shù),將對象中對應的元素打包成一個個元組,然后返回由這些元組組成的對象,返回的結果可以直接強轉為list列表,這樣做的好處是節(jié)約了不少的內存!
1.語法
zip([iterable, ...])
參數(shù)說明:iterable — 迭代器對象,zip函數(shù)中的迭代器對象可以是一個或者多個.
2.返回值
zip函數(shù)的返回值是zip類的對象,可以通過list()強制轉為list列表.
3.zip使用
# !usr/bin/env python
# -*- coding:utf-8 _*-
list1 = ["a","b","c","d","E"]
list2 = [1,False,50.5]
result = zip(list1,list2)
print(type(result))
print(list(result))
輸出結果:
<class 'zip'>
[('a', 1), ('b', False), ('c', 50.5)]
注意:如果兩個迭代器的長度不同,自動根據最短的迭代器長度匹配!
二.*zip函數(shù)的描述和使用
如果說zip函數(shù)是壓縮的話,那么*zip就是解壓,其函數(shù)返回值是二維矩陣式
list1 = ["a","b","c","e","fasf"]
list2 = [1,False,50.5]
a1,a2 =zip(*zip(list1,list2))
print(list(a1))
print(list(a2))
輸出結果:
['a', 'b', 'c']
[1, False, 50.5]
注意:如果兩個迭代器的長度不同,自動根據最短的迭代器長度匹配!