解释:

  后缀为zip的文件肯定都见过吧?zip是打包压缩好的一个文件,所以,zip()函数也简单的理解为打包压缩函数,将不同个数相同类型的字段结合在一起。

  官方定义为:zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。

看两段代码:

字符串:

a = ''
b = ''
print "字符串zip():",zip(a,b)
print "字符串解压zip得到的是列表,里面是元组:",zip(*zip(a,b))
za,zb =zip(*zip(a,b))
print "za is {za},zb is {zb}".format(za=za,zb=zb) 结果:

字符串zip(): [('1', '2'), ('1', '2'), ('1', '2'), ('1', '2')]
字符串解压zip得到的是列表,里面是元组: [('1', '1', '1', '1'), ('2', '2', '2', '2')]
za is ('1', '1', '1', '1'),zb is ('2', '2', '2', '2')

列表:

la = [1,2,3,4]
lb = [1,2,3,4,5]
print "列表zip():",zip(la,lb)
print "列表解压zip得到的是列表,里面是元组:",zip(*zip(la,lb))
zla,zlb = zip(*zip(la,lb))
print "zla is {zla},zlb is {zlb}".format(zla=zla,zlb=zlb) 执行结果:

列表zip(): [(1, 1), (2, 2), (3, 3), (4, 4)]
列表解压zip得到的是列表,里面是元组: [(1, 2, 3, 4), (1, 2, 3, 4)]
zla is (1, 2, 3, 4),zlb is (1, 2, 3, 4)

元组:

ta = [1,2,3,4]
tb = [1,2,3,4,5]
print "元组zip():",zip(ta,tb)
print "元组解压zip得到的是列表,里面是元组:",zip(*zip(ta,tb))
zta,ztb = zip(*zip(ta,tb))
print "zta is {zta},ztb is {ztb}".format(zta=zta,ztb=ztb) 执行结果:
元组zip(): [(1, 1), (2, 2), (3, 3), (4, 4)]
元组解压zip得到的是列表,里面是元组: [(1, 2, 3, 4), (1, 2, 3, 4)]
zta is (1, 2, 3, 4),ztb is (1, 2, 3, 4)

遍历:

la = [1,2,3,4]
lb = [1,2,3,4,5] for i,j in zip(la,lb):
print i,j 执行结果:
1 1
2 2
3 3
4 4

  总结:有以上可以看出,1.只要可以迭代的相同类型的可以压缩成一个元素是元组的列表。

    2.解压之后都是元素为元组的列表。

        3.以长度最少的为标准。

python zip()函数的使用的更多相关文章

  1. python zip函数(11)

    一.zip函数描述和使用 zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,返回的结果可以直接强转为list列表,这样做的好处是节约了不少的 ...

  2. python zip()函数

    描述 zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表. 如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符 ...

  3. 【转】Python zip() 函数

    转自:http://www.runoob.com/python/python-func-zip.html 描述 zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回 ...

  4. Python: zip函数

    zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表. 参考链接解释

  5. python zip()函数用法

    zip() --内建函数 zip([iterable, ...]) 它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表) ...

  6. Python zip Python zip函数

    zip([iterable, ...])zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的li ...

  7. python zip函数介绍

    首先用help(zip)来看一下帮助文档:

  8. Python zip()函数实现并行迭代

    示例1: for i, j in zip(range(0, 10), range(1, 11)): print(i, j) 输出结果: 0 11 22 33 44 55 66 77 88 99 10 ...

  9. zip函数-Python 3

    zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表. zip函数在获取数据后,生成字典(dict)时比较好用. for examples: # Code based on P ...

随机推荐

  1. spec文件中的 %pre %post %preun %postun

    转载http://meinit.nl/rpm-spec-prepostpreunpostun-argument-values RPM has 4 parts where (shell) scripts ...

  2. Python turtle绘制阴阳太极图代码解析

    本文详细分析如何使用Python turtle绘制阴阳太极图,先来分解这个图形,图片中有四种颜色,每条曲线上的箭头表示乌龟移动的方向,首先从中心画一个半圆(红线),以红线所示圆的直径作半径画一个校园, ...

  3. RN 实战 & React Native 实战

    RN 实战 & React Native 实战 https://abc.xgqfrms.xyz/react-native-docs/ 0.59 https://github.com/xgqfr ...

  4. linux 查看路由表

    随便转载,保留出处:http://www.cnblogs.com/aaron-agu/ route –n

  5. Ubuntu16.04网络不能访问解决办法

      问题: 系统重启后,网络不能正常使用,加载网络配置失败,且重启网络时也提示错误. 解决方法: 在定位的过程中发现是配置中的网络设备号与实际设备号不符. 1.查看网络配置中的配备号: vi /etc ...

  6. Bootstrap之信息记录

    Bootstrap中文网: http://www.bootcss.com/ 上面有一些资料和范例 实例精选: https://v3.bootcss.com/getting-started/#examp ...

  7. 深度学习最全优化方法总结比较(SGD,Adagrad,Adadelta,Adam,Adamax,Nadam)(转)

    转自: https://zhuanlan.zhihu.com/p/22252270    ycszen 另可参考: https://blog.csdn.net/llx1990rl/article/de ...

  8. Lodop打印控件 超文本自动分页

    Lodop打印控件打印html超文本,通常传入一个超文本内容可能会超过纸张,如果要拆分每页显示哪些然后手动分页比较麻烦,Lodop中的超文本都有自动分页的特点.自动分页的依据:1.超文本超过设置的打印 ...

  9. python 模块之-shelve

    shelve模块比pickle模块简单,只有一个open函数,返回类似字典的对象,可读可写;key必须为字符串,而值可以是python所支持的数据类型 import shelve f = shelve ...

  10. Codeforces Round #483 Div. 1

    A:首先将p和q约分.容易发现相当于要求存在k满足bk mod q=0,也即b包含q的所有质因子.当然不能直接分解质因数,考虑每次给q除掉gcd(b,q),若能将q除至1则说明合法.但这个辣鸡题卡常, ...