zip()函数

2017年8月4日 21:08 581  0  python 内置函数

zip()函数是python内置的函数

它可以压缩任意多个[0,N]参数,然后形成新的复合tuple

Talk is cheap,show you the code.

ex.1:

    a = [0,1,2]
    b = [3,4,5]
    t = zip(a, b)
    print(list(t)) 
    # [(0, 3), (1, 4), (2, 5)]
    # 这里要注意的是python2中返回的是一个list本身
    # 而python3中返回的是一个生成器

ex.2:

    a = [0,1,2]
    b = [3,4,5,6,7]
    t = zip(a, b)
    print(list(t))
    # [(0, 3), (1, 4), (2, 5)]
    # 由此可以看出zip()压缩时以最短的元素判断是否结束

ex.3:

    a = [0,1,2]
    b = [3,4,5]
    t = zip(a,b)
    print(list(t))
    print(list(t))
    #[(0, 3), (1, 4), (2, 5)]
    # []
    # zip()的结果只能使用一次
    # python3中zip()实际上是一个生成器对象
    # 用list()获取zip()结果时,已经完成过一次迭代遍历,第二次再次使用list()时迭代已经结束,返回[]

ex.4:

    a = [0,1,2]
    t = zip(a)
    # [(0,), (1,), (2,)]
    # zip()在只有一个参数时运作的方式。