python中zip()函数的用法

zip函数的原型为:zip([iterable, …])

  zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同。也就是说,该函数返回一个以元组为元素的列表,其中第 i 个元组包含每个参数序列的第 i 个元素。返回的列表长度被截断为最短的参数序列的长度。只有一个序列参数时,它返回一个1元组的列表。没有参数时,它返回一个空的列表。利用*号操作符,可以将list unzip(解压).

  • 把两个列表转化为一个列表,以元组为元素
seq = ['one', 'two', 'three']
seq1=[1,2,3]
seq3=[4,5,6]

list(zip(seq,seq1))

out:
[('one', 1), ('two', 2), ('three', 3)]
  • 还可以这样转化,每个列表为一个元素:
  • zz=zip(seq,seq1)
    list(zip(*zz))

    out:
    [('one', 'two', 'three'), (1, 2, 3)]

     

  • 把两个列表转化为一个字典
dict(zip(seq,seq1))

out:
{'one': 1, 'three': 3, 'two': 2}

 

posted @ 2018-11-20 10:59  Jin_liang  阅读(16295)  评论(0编辑  收藏  举报