我是Python新手,我不是英语母语人士。今天我在itertools模块中学到了一些功能。有一个叫做islice的函数。它代表infinitive slice
吗?据我所知,它可用于切割不定式对象序列,并且通常与itertools.count()
一起使用。
答案 0 :(得分:3)
我认为它代表“可迭代切片”,因为它采用与slice
内置相同的参数,但生成一系列结果而不是返回列表。
你可能会对“不定式”产生一些轻微的误解,这是一种言语的一部分(英语中,“堕落”是动词“堕落”的不定式)。你或许意味着“无限”,这是永无止境的或无数的。
如果是这样,你已经正确地观察到itertools
中函数的一个优点是它们可以应用于无限序列。这是因为它们返回按需生成结果的迭代器,而不是返回列表的函数。
答案 1 :(得分:1)
slice
是一个内置类。前缀' i'对于“迭代者”#39;添加以避免混淆和名称冲突from itertools import *
。
在Python 2中,itertools还有imap
和ifilter
,以避免与旧版map
和filter
发生冲突。在Python 3中,imap
和ifilter
成为map
和filter
的新版本,因此从itertools
中删除。