那些 比你想象中的更为强大。
什么是迭代?
简单的说,迭代是可以被 循环使用的数据类型,Python中常见的迭代器是列表。
在上面的例子中,我们创建了一个字符串列表,我们已经给这个列表命名为 。
我们可以使用 循环来迭代,下面的的列表中将输出列表中的每一个元素。
Python中有许多不同种类的迭代,但是在本教程中,我们将使用列表。
要求
我们必须导入该 模块才能使用它,我们还将导入 模块。
以下所有示例将包含这些导入。
itertools
accumulate()
该函数会返回函数结果的迭代器,函数可以是变量来传递。 函数将一个函数作为参数。它也需要一个迭代。它返回所有的结果,结果本身包含在一个迭代器中。
Example
Example
需要两个数字并乘以它们
在下一个例子中将会使用该 功能
Example
Example
该 函数返回最大的项
传递函数是可选的
Example
Output
如果没有指定功能,项目将相加。
count()
迭代器每次返回 的值
Example
返回 之间的所有奇数
Output
cycle()
无限循环迭代器中的每一个元素
Example
在上面的代码中,我们创建一个列表,然后我们循环或循环遍历这个列表。通常,一个 循环逐步循环,直到它到达结束。如果一个列表有 个项目,循环将重复3次。但是如果我们使用这个 功能的话。当我们到达迭代的结束时,我们从一开始就重新开始。
Output
repeat()
此功能将一遍又一遍地重复一个对象,除非有一个 次数。
Example
在上面的代码中,我们创建一个可重复的迭代 ,它会不停地循环输出
Output
Example
如果我们使用 参数,可以限制它将重复的次数。
Output
在这个例子中, 只重复三次
chain()
此函数需要一系列迭代,并将其返回为一个长的迭代。
Example
Output
compress()
这个函数可以使用另一个过滤器来迭代
Example
Output
dropwhile()
做一个迭代器,只要返回为 ,就从 中删除元素,否则就返回后面的每个元素
Example
Output
好。这可以令人困惑 代码说,当项目小于5时,删除每个项目。遇到不少于5的项目后,返回剩下的项目。这就是为什么最后一个被归还。
Step Through It
groupby()
简单地说,这个功能将事情集中在一起
Example
Output
filterfalse()
这个函数使迭代器从 中过滤元素,只返回的元素
Example
Output
Debug
islice()
这个功能非常像切片,此功能允许您剪切一个可迭代的片段
Example
Output
starmap()
此函数使迭代器使用从 获取的参数来计算函数
Example
Output
Step Through
tee()
从单个迭代中返回 个独立迭代器
Example
默认值为2,但您可以根据需要进行许多操作。
Output
takewhile()
这是相反的 ,只要返回为 ,该函数就可以使用迭代器并从 返回元素
Example
Output
Step Through It
zip_longest()
此函数使迭代器聚合每个迭代的元素,如果迭代长度不均匀,则缺少的值将被填充为 。迭代继续,直到最长的迭代耗尽。
Example
Output
product()
此函数从一系列迭代创建笛卡尔乘积。
Example
Output
想象一下这样的桌子:
permutations()
Example
Output
combinations()
此函数需要一个迭代和一个整数,这将创建具有 成员的所有独特组合。
Example
在这段代码中,我们使用2个成员组合所有组合。
Output
Example
在这段代码中,我们使用3个成员组合所有组合。这有点不太令人兴奋。
Output
combinationswithreplacement()
这一个就像 功能一样,但是这个可以让单个元素重复一次。
Example
Output
领取专属 10元无门槛券
私享最新 技术干货