for循环工作本质
for item in Iterable 循环的本质就是先通过iter()函数获取可迭代对象Iterable
的迭代器,然后对获取到的迭代器不断调⽤next()⽅法来获取下⼀个值并将其
赋值给item,当遇到StopIteration的异常后循环结束。
li = [100, 200, 300]
# for num in li:
# print(num)
# 1. 通过调用可迭代对象的__iter__方法获取迭代器
# 2. 对迭代器调用__next__进行迭代操作,
# 如果没有抛出StopIteration异常,表示迭代没有结束,把获取到的数据元素放到变量中
# 如果抛出了异常,表示迭代结束,退出执行
# 3. 执行循环体
# 4. 跳转到第2步执行
while循环解释for工作本质:
iterator = li.__iter__()
while True:
try:
num = iterator.__next__()
except StopIteration:
break
else:
print(num)
for item in Iterable 循环的本质就是先通过iter()函数获取可迭代对象Iterable
的迭代器,然后对获取到的迭代器不断调⽤next()⽅法来获取下⼀个值并将其
赋值给item,当遇到StopIteration的异常后循环结束。
li = [100, 200, 300]
# for num in li:
# print(num)
# 1. 通过调用可迭代对象的__iter__方法获取迭代器
# 2. 对迭代器调用__next__进行迭代操作,
# 如果没有抛出StopIteration异常,表示迭代没有结束,把获取到的数据元素放到变量中
# 如果抛出了异常,表示迭代结束,退出执行
# 3. 执行循环体
# 4. 跳转到第2步执行
while循环解释for工作本质:
iterator = li.__iter__()
while True:
try:
num = iterator.__next__()
except StopIteration:
break
else:
print(num)