Python – Itertools.islice()
在Python中,Itertools 是内置模块,它允许我们以有效的方式处理迭代器。它们使迭代列表和字符串等可迭代对象变得非常容易。一个这样的 itertools函数是islice() 。
注意:更多信息请参考Python Itertools
islice()函数
该迭代器选择性地打印在其作为参数传递的可迭代容器中提到的值。
句法:
islice(iterable, start, stop, step)
示例 1:
# Python program to demonstrate
# the working of islice
from itertools import islice
# Slicing the range function
for i in islice(range(20), 5):
print(i)
li = [2, 4, 5, 7, 8, 10, 20]
# Slicing the list
print(list(itertools.islice(li, 1, 6, 2)))
输出:
0
1
2
3
4
[4, 7, 10]
示例 2:
from itertools import islice
for i in islice(range(20), 1, 5):
print(i)
输出:
1
2
3
4
这里我们提供了三个参数range()
, 1 和 5。因此,第一个可迭代为 range 的参数,第二个参数 1 将被视为起始值,5 将被视为终止值。
示例 3:
from itertools import islice
for i in islice(range(20), 1, 5, 2):
print(i)
输出:
1
3
这里我们提供四个参数range()
作为可迭代对象,1、5 和 2 作为停止值。因此,第一个可作为范围迭代的参数,第二个参数 1 将被视为起始值,5 将被视为停止值,2 将被视为在迭代值时跳过多少步的步长值。