视频教程下载链接:http://pan.baidu.com/s/1pLTl0oz
配套教程下载:http://pan.baidu.com/s/1qYdI6q4
如果你已经使用过Python有一段时间,你会经常碰到zip函数,它是Python的内建函数,zip函数可以接受任意多个(包括0个和1个)序列作为参数,返回一个元组的列表。这样表述起来可能比较难理解,所以现在我们直接来看看它的具体的用法,这里我们创建2个长度相同的列表:
first = ["a", "b", "c"]
last = ["x", "y", "z"] |
这里我们已经创建了2个长度相等的列表,然后我们用zip函数将它们zip在一起,接着,把2个列表当做参数传递进去:
letter = zip(first, last) |
也就是说,zip函数会将列表first和列表last链接起来,然后,将它们保存在letter这个元组所组成的列表中。我们打印一下letter:
运行,你看:
图 3‑21
它会提示说letter是一个zip对象。
那我们可以通过循环,将这个zip变量中的元素打印出来:
for i, j in letter:
print(i, j) |
运行,你看:
图 3‑22
从结果可以看出zip函数的功能,实际上,它是将2个列表合并起来,得到一个元组的列表,也就是说,合并后的列表是这样的:
[("a", "x"), ("b", "y"), ("c", "z")] |
所以总结一下: zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。若传入参数的长度不等,则返回最终的列表的长度和参数中长度最短的对象相同。Zip函数很有用,它常被用于“转置矩阵”,”压缩与解压缩“等算法中。
更多精彩内容尽在视频中!
本文固定链接:
http://www.oxox.work/web/python/zip/ | 虚幻大学查看原文:
http://www.oxox.work/web/python/zip/