python中的for循环语句,python遍历循环通过for实现
在python中,有两个循环:for循环和while循环。
while循环的实现非常简单。它的本质是一个条件语句,定义了条件。当条件满足时,while代码块继续执行。
但是对于loop来说,到底是怎么回事呢?说到for循环,就不能不谈迭代了。
迭代
python中有两种迭代对象:迭代器对象和可迭代对象。
小贴士:如何分辨一个对象是迭代器还是迭代器?
FromcollectionImportable,迭代器isinstance (object,class),第一个参数是对象,第二个参数是类名;返回值为真,即对象为:
相关:《Python视频教程》
1.迭代对象
许多python数据类型是迭代对象:列表、字典、元组、字符串等。
a=[1,2,3]
isinstance(a,Iterable) # True
注意:可迭代对象不是迭代器对象。
2.迭代器对象
迭代器对象依赖于iter(args)方法,参数args必须是可迭代对象。
a=[1,2,3]
b=iter(a)
isinstance(b,迭代器)#True
Isinstance(b,Iterable)#True由此可以看出迭代器对象也是可迭代对象。
那么,这两个对象和for循环有什么关系呢?
for循环
众所周知,迭代器对象实现了__next__()方法,可以重复调用该方法返回迭代器对象的每个元素。
for循环的对象必须是iterable对象。在底层,所有iterable对象都内置了__iter__()方法,返回值是iterator对象。
至此,我们清楚了for循环的本质是调用迭代器对象的_ _ iterator _ _()方法,然后调用__next__()方法获取对象中的每一个元素。直到StopIteration异常,这意味着迭代器中没有下一个元素,for循环自动处理异常并跳出循环。
相关建议:
Python中的迭代器是什么?
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。