跟着文档学python(三):zip (Python function, in 2. Built-in Functions)

一,函数的文档:

zip():

zip(*iterables)

Make an iterator that aggregates elements from each of the iterables.

Returns an iterator of tuples, where the i-th tuple contains the i-th element from each of the argument sequences or iterables. The iterator stops when the shortest input iterable is exhausted. With a single iterable argument, it returns an iterator of 1-tuples. With no arguments, it returns an empty iterator. Equivalent to:

def zip(*iterables):
    # zip(‘ABCD‘, ‘xy‘) --> Ax By
    sentinel = object()
    iterators = [iter(it) for it in iterables]
    while iterators:
        result = []
        for it in iterators:
            elem = next(it, sentinel)
            if elem is sentinel:
                return
            result.append(elem)
        yield tuple(result)

The left-to-right evaluation order of the iterables is guaranteed. This makes possible an idiom for clustering a data series into n-length groups using zip(*[iter(s)]*n). This repeats the same iterator n times so that each output tuple has the result of n calls to the iterator. This has the effect of dividing the input into n-length chunks.

zip() should only be used with unequal length inputs when you don’t care about trailing, unmatched values from the longer iterables. If those values are important, use itertools.zip_longest() instead.

zip() in conjunction with the * operator can be used to unzip a list:

>>>

>>> x = [1, 2, 3]
>>> y = [4, 5, 6]
>>> zipped = zip(x, y)
>>> list(zipped)
[(1, 4), (2, 5), (3, 6)]
>>> x2, y2 = zip(*zip(x, y))
>>> x == list(x2) and y == list(y2)
True
时间: 2024-12-26 23:56:15

跟着文档学python(三):zip (Python function, in 2. Built-in Functions)的相关文章

跟着文档学python(二):time.time() 与 time.clock() 的对比与总结

一,两个函数的文档: 1,time.time(): time.time() Return the time in seconds since the epoch as a floating point number. Note that even though the time is always returned as a floating point number, not all systems provide time with a better precision than 1 sec

跟着文档学Vue(三)——组件基础

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" con

[转帖]脑残式网络编程入门(一):跟着动画来学TCP三次握手和四次挥手

脑残式网络编程入门(一):跟着动画来学TCP三次握手和四次挥手 http://www.52im.net/thread-1729-1-1.html 1.引言 网络编程中TCP协议的三次握手和四次挥手的问题,在面试中是最为常见的知识点之一.很多读者都知道"三次"和"四次",但是如果问深入一点,他们往往都无法作出准确回答. 本篇文章尝试使用动画图片的方式,来对这个知识点进行"脑残式"讲解(哈哈),期望读者们可以更加简单.直观地理解TCP网络通信交互的本

AOPR快速破解Office文档密码的三个技巧

Advanced Office Password Recovery是一款专业的Office密码破解工具,AOPR软件并不复杂但是可以在极短的时间内轻松破解Excel2013或者Word2016的密码.本文将具体介绍几个在使用Advanced Office Password Recovery破解Office文档密码的技巧.  Advanced Office Password Recovery密码破解工具 技巧一:估计Office文档密码特点 为了尽可能缩短Advanced Office Passw

ElasticSearch文档操作介绍三

ElasticSearch文档的操作 文档存储位置的计算公式: shard = hash(routing) % number_of_primary_shards 上面公式中,routing 是一个可变值,默认是文档的 _id ,也可以设置成一个自定义的值. routing 通过 hash 函数生成一个数字,然后这个数字再除以 number_of_primary_shards (主分片的数量)后得到 余数 .这个分布在 0 到 number_of_primary_shards-1 之间的余数,就是

python(三):python自动化测试定位

webdriver 提供了八种元素定位方法:id.name.class name.tag name.link text.partial link text.xpath.css selector在 Python 语言中对应的定位方法如下:find_element_by_id()find_element_by_name()find_element_by_class_name()find_element_by_tag_name()find_element_by_link_text()find_elem

读metronic文档学到的几个知识点

1.RTL  同样的页面,它做了两套.为什么,因为在这个世界上,有些民族,有些语种,是从右向左来的. 2. google material design 同样的一套东西,又分别做了google material 版,那默认版是什么呢?flat design版. google的设计师是怎么想的呢? 引用一张图,来自知乎: 还记得,ipod旋转的马达声吗,就是这个意思.

跟着文档学习gulp1.2创建任务(task)

导出任务 任务(task)可以分为公开(public)或私有(private)类型 公开任务从gulpfile中被导出(export),可以通过gulp命令直接调用 私有任务被设计为在内部使用,通常作为series()或parallel()组合的组成部分(私有类型不能直接被用户调用) 例子1: const { series,parallel } = require('gulp'); function clean(cb) { // body omitted cb(); } function bui

征python文档撰写技术员

最近频繁使用python,一些不懂的东西就要查一下,好几次到了官网,查了半天都放弃了,直接google了....哎...被Qt的文档宠坏了...如果有python爱好者和我有一样的想法,希望在有生之年再也不用饱受官网文档的折磨的,请联系我([email protected]),我们一起to make life better. 要求:至少要会英文吧,文笔简练,行文流畅,最好是落笔生花的. 声明:这个一个非盈利活动,具体开工日期等人数凑齐再说,另外提供pythoner职位两枚,工作地点武汉,待遇优厚