__iter__方法ide
class foo: def __init__(self,name,age): self.name=name self.age=age def __iter__(self): return iter([1,2,3,4]) li=foo("jiaxin",8) # 若是类中有__iter__方法,对象就是可迭代对象 # 对象.__iter__()的返回值:迭代器 # for 循环:迭代器,next # for 循环,可迭代对象,先获取对象的__iter__方法,变成迭代器,再next #1.执行li对象中的__iter__方法,并得到其返回值 #2.循环上一步中返回的对象 #循环的不是对象,是对象__iter__中的返回值 for i in li: print(i) # 1 # 2 # 3 # 4