# -*- coding: utf-8 -*-
class Library(object):
def __init__(self):
self.books = { 'title' : 'a', 'title2' : 'b', 'title3' : 'c', }
def __getitem__(self, i):
return self.books[i]
def __iter__(self):
# 方法1 使用生成器
for titles in self.books:
yield self.books[titles]
# 方法2 使用迭代器
# return self.books.itervalues()
library = Library()
# 1.普通方法
print library.books['title']
# 2.使用__getitem__
print library['title']
# 3.迭代器
for book in library:
print book
python :使用 __getitem__ 和 __iter__ 可以使类成为一个迭代器
最新推荐文章于 2023-01-12 10:14:22 发布