>[success] # 多个数据压缩 -- zip ~~~ 1.当有多个数组,想把他们对应项合并时候,对应打印使用zip 2.zip 只会以最短长度作为组合依据 3.zip_longest 可以构建解决问题二 ~~~ >[danger] ##### zip --- 三种情况 * 情况一 ~~~ a = ['a', 'b', 'c'] b = ['1', '2', '3'] for i in zip(a,b): print(i) 打印结果: ('a', '1') ('b', '2') ('c', '3') ~~~ * 情况二 ~~~ a = ['a', 'b', 'c'] b = ['1', '2', '3'] for k,v in zip(a,b): print(k,v) 打印结果: a 1 b 2 c 3 ~~~ * 情况三 ~~~ a = ['a', 'b', 'c'] b = ['1', '2', ] for k,v in zip(a,b): print(k,v) 打印结果: a 1 b 2 ~~~ >[danger] ##### zip_longest 解决zip尴尬问题 ~~~ 1.zip_longest(a,b, fillvalue=0) 设置fillvalue 来制定返回搭配值 ~~~ ~~~ from itertools import zip_longest a = ['a', 'b', 'c'] b = ['1', '2', ] for k,v in zip_longest(a,b): print(k,v) 打印结果: a 1 b 2 c None ~~~ >[danger] ##### zip 和字典列表配合 * dict ~~~ a = ['a', 'b', 'c'] b = ['1', '2', ] print(dict(zip(a,b))) 打印结果: {'a': '1', 'b': '2'} ~~~ * list ~~~ a = ['a', 'b', 'c'] b = ['1', '2', ] print(list(zip(a,b)) 打印结果: [('a', '1'), ('b', '2')] ~~~