Python 继承:从基础到复杂场景的全面解析
1. 扩展内置类
在 Python 中,继承的一个有趣应用是为内置类添加功能。以 Contact 类为例,我们通常会将联系人添加到一个联系人列表中。如果我们希望能够按名称搜索该列表,该怎么做呢?我们可以在 Contact 类中添加一个搜索方法,但实际上这个方法更适合放在列表本身。我们可以通过继承来实现这一点:
class ContactList(list):
def search(self, name):
'''Return all contacts that contain the search value
in their name.'''
matching_contacts = []
for contact in self:
if name in contact.name:
matching_contacts.append(contact)
return matching_contacts
class Contact:
all_contacts = ContactList()
def __init__(self, name, email):
self.name = name
self.email = email
self.all_contacts.append(self)
我们可以
超级会员免费看
订阅专栏 解锁全文
26万+

被折叠的 条评论
为什么被折叠?



