【发布时间】:2018-01-28 19:04:56
【问题描述】:
如果我有一个文件迭代器
with open('test1.txt','r') as f1:
print(f1.__next__())
但是如果我对一个列表做同样的事情,它就行不通了。
a1 = [1,2,3,4,5]
a1.__next__()
那么,文件迭代器和列表迭代器有什么区别呢?文件和列表(或元组、字典等)迭代器的行为是否不同?
【问题讨论】:
-
顺便说一句,你不应该直接调用
__next__方法,请使用next函数,例如next(f1)。对于名称以双下划线开头和结尾的大多数其他“魔术”方法(又名 dunder 方法)也是如此。所以使用len函数,不要使用__len__方法,使用str函数,不要使用__str__方法等
标签: python python-3.x