for 循环靠什么遍历一个对象
for x in 某个对象 能跑起来,是因为那个对象实现了【0】。
开始练习 →
可迭代和列表的区别
一个对象"可迭代",意思是【0】。
开始练习 →
自己写可迭代对象的最简办法
想让自己的类能被 for 遍历,最省事的写法是__iter__ 里【0】。
开始练习 →
遍历完之后还能再遍历吗
一个 __iter__ 里 return iter(self.items) 的对象,连着 for 两次,第二次【0】。
开始练习 →
这个书架能被 for 吗
运行下面这段程序: class Shelf: def __init__(self, books): self.books = books def __iter__(self): return
开始练习 →
让书架能被 for 遍历
补全 __iter__,让 Shelf 能被 for 遍历。 补全后只输出遍历到的第一本书名。
开始练习 →
数一数书架上有几本
同一个 Shelf。补全之后用遍历的方式数出一共有几本。
开始练习 →
连着遍历两次
同一个 Shelf,连着遍历两次,把两次取到的本数加起来输出。
开始练习 →
yield 和 return 差在哪
函数里用 yield 而不是 return,最大的差别是【0】。
开始练习 →
生成器省的是什么
用生成器处理一百万条数据,比先做成列表省的是【0】。
开始练习 →