一、迭代

迭代是指重复执行一段代码的过程,每次执行时利用上一次执行的结果继续执行下去。在Python中,可以使用循环语句来实现迭代,例如for循环和while循环。

1. 使用for循环进行迭代:

for i in range(5):
    print(i)

上述代码会依次输出0、1、2、3、4,即循环5次。

2. 使用while循环进行迭代:

i = 0
while i < 5:
    print(i)
    i += 1

上述代码同样会输出0、1、2、3、4,即循环5次。

二、可迭代

可迭代是指能够被迭代的对象,也就是说,可以使用迭代器逐个访问其中的元素。在Python中,凡是可以使用for循环进行遍历的对象,都是可迭代的。

1. 列表对象的可迭代性:

my_list = [1, 2, 3, 4, 5]
for item in my_list:
    print(item)

上述代码可以依次输出列表中的元素1、2、3、4、5。

2. 字符串对象的可迭代性:

my_string = "Hello"
for char in my_string:
    print(char)

上述代码会逐个输出字符串中的字符"H"、"e"、"l"、"l"、"o"。

三、迭代器

迭代器是实现了迭代协议的对象,能够通过next()函数逐个返回元素。迭代器具有惰性计算的特点,即只在需要的时候才会计算下一个元素,因此可以节省内存空间。

1. 创建迭代器:

my_list = [1, 2, 3, 4, 5]
my_iterator = iter(my_list)

上述代码中,iter()函数将列表对象转换为迭代器对象。

2. 使用迭代器:

print(next(my_iterator))  # 输出1
print(next(my_iterator))  # 输出2
print(next(my_iterator))  # 输出3

上述代码使用next()函数逐个返回迭代器中的元素。

3. 迭代器的无限循环:

my_iterator = iter([1, 2, 3])
while True:
    try:
        print(next(my_iterator))
    except StopIteration:
        break

上述代码中,当迭代器中的元素耗尽时,会抛出StopIteration异常,用于终止循环。