Python迭代器函数:iter()、next()、yield
发布时间:2023-11-28 03:50:44
Python中,迭代器是一种可以迭代访问数据集合的对象。迭代器对象使用iter()函数来创建,并使用next()函数来逐个访问数据集合的元素。
iter()函数可以将一个迭代器对象从一个可迭代的数据集合中创建出来。可迭代的数据集合包括字符串、列表、元组等。例如,我们可以使用iter()函数将一个列表对象转化为一个迭代器对象,然后使用next()函数逐个访问该迭代器对象中的元素。
下面是一个例子:
my_list = [1, 2, 3, 4, 5] my_iter = iter(my_list) print(next(my_iter)) # 输出:1 print(next(my_iter)) # 输出:2 print(next(my_iter)) # 输出:3
在上面的例子中,我们首先定义了一个列表对象my_list,然后使用iter()函数将其转化为一个迭代器对象my_iter。接下来,我们使用next()函数来逐个访问迭代器对象my_iter中的元素,并打印输出结果。
此外,Python中的迭代器对象还可以通过使用yield关键字来定义。yield关键字在函数中的使用会将该函数变为一个生成器函数,生成器函数可以用来生成迭代器对象。
下面是一个例子:
def my_generator():
yield 1
yield 2
yield 3
my_iter = my_generator()
print(next(my_iter)) # 输出:1
print(next(my_iter)) # 输出:2
print(next(my_iter)) # 输出:3
在上面的例子中,我们首先定义了一个生成器函数my_generator,在该函数中通过使用yield关键字逐个生成数值。然后,我们使用my_generator()来创建一个迭代器对象my_iter,并使用next()函数逐个访问该迭代器对象中的元素,并打印输出结果。
总结起来,iter()函数用于创建迭代器对象,next()函数用于逐个访问迭代器对象中的元素,而使用yield关键字定义的生成器函数可以用来生成迭代器对象。通过使用这些迭代器函数,我们能够更方便和灵活地对数据集合进行迭代访问操作。
