Python的iter()
函数是一个用于获取对象的迭代器的内置函数。这个函数对于实现迭代协议的对象非常有用,允许我们对集合进行迭代。
函数定义
iter()
函数的基本语法如下:
iter(object[, sentinel])
object
:支持迭代的集合对象。sentinel
:如果提供了第二个参数,那么object
必须是一个可调用的对象(如函数),此时迭代会在返回值等于sentinel
的时候终止。
如果不提供sentinel
参数,object
必须是一个支持迭代协议的对象(即,有__iter__()
方法或者序列类型的__getitem__()
方法),函数返回一个迭代器对象。
基本用法
获取列表迭代器
my_list = [1, 2, 3]
my_iter = iter(my_list)
print(next(my_iter)) # 输出: 1
print(next(my_iter)) # 输出: 2
使用sentinel参数
def countdown(n):
print('Starting countdown from', n)
while n > 0:
yield n
n -= 1
# 创建一个以0为终止符的迭代器
iter_countdown = iter(countdown(5).__next__, 0)
fo