您的位置:首页 > 编程语言 > Python开发

python :使用 __getitem__ 和 __iter__ 可以使类成为一个迭代器

2015-04-17 20:10 627 查看
# -*- 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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐