iter() 函数是 Python 内置函数,用于生成一个迭代器。迭代器是一种可以逐个访问元素的对象,可以用于循环遍历。

以下是 iter() 函数的语法:
iter(iterable[, sentinel])

  •  iterable: 要转换为迭代器的可迭代对象,如列表、元组、字符串等。

  •  sentinel: 可选,如果提供了 sentinel 参数,iter() 会创建一个迭代器,该迭代器会不断调用 iterable 的 __next__() 方法,直到返回值等于 sentinel 为止。


下面是一些示例:
# 将列表转换为迭代器
my_list = [1, 2, 3, 4, 5]
my_iter = iter(my_list)

# 使用迭代器进行遍历
for element in my_iter:
    print(element)
# 输出:
# 1
# 2
# 3
# 4
# 5

# 将字符串转换为迭代器
my_string = "Hello"
my_iter_str = iter(my_string)

# 使用迭代器进行遍历
for char in my_iter_str:
    print(char)
# 输出:
# H
# e
# l
# l
# o

# 使用 sentinel 参数创建迭代器
class Counter:
    def __init__(self, start, end):
        self.current = start
        self.end = end

    def __iter__(self):
        return self

    def __next__(self):
        if self.current > self.end:
            raise StopIteration
        self.current += 1
        return self.current - 1

counter = iter(Counter(1, 5), sentinel=3)

for num in counter:
    print(num)
# 输出:
# 1
# 2
# 3

在这些示例中,iter() 函数被用于将列表和字符串转换为迭代器,并使用迭代器进行遍历。此外,还演示了使用 sentinel 参数创建带有自定义停止条件的迭代器。


转载请注明出处:http://www.zyzy.cn/article/detail/332/Python3