class AddressBook:
def init(self):
self.contacts = []
def add_contact(self, name, phone_number):
"""增加联系人"""
self.contacts.append({'name': name, 'phone_number': phone_number})
def delete_contact(self, name):
"""删除联系人"""
for i, contact in enumerate(self.contacts):
if contact['name'] == name:
del self.contacts[i]
break
else:
print("联系人不存在")
def update_contact(self, old_name, new_name=None, new_phone_number=None):
"""更新联系人信息"""
for contact in self.contacts:
if contact['name'] == old_name:
if new_name:
contact['name'] = new_name
if new_phone_number:
contact['phone_number'] = new_phone_number
print(f"联系人 {old_name} 的信息已更新。")
break
else:
print("联系人不存在")
def search_contact(self, name):
"""查找联系人"""
for contact in self.contacts:
if contact['name'] == name:
return contact
print("联系人不存在")
return None
def display_all_contacts(self):
"""显示所有联系人"""
for contact in self.contacts:
print(f"姓名: {contact['name']}, 电话号码: {contact['phone_number']}")
使用示例:
address_book = AddressBook()
address_book.add_contact("张三", "123456789")
address_book.add_contact("李四", "987654321")
address_book.display_all_contacts() # 显示所有联系人信息
address_book.delete_contact("李四") # 删除李四的联系人信息
address_book.update_contact("张三", new_name="张三丰", new_phone_number="0987654321") # 更新张三的联系人信息
updated_contact = address_book.search_contact("张三丰") # 查找张三丰的联系人信息并打印出来,如果找不到则打印"联系人不存在"的信息。如果找到,则打印出该联系人的信息。这里返回的是一个字典,包含了联系人的姓名和电话号码。你可以根据需要进一步处理这个字典。这里只是简单地打印出来。如果需要进一步处理,你可以根据需要修改这部分代码。例如,你可以将这个字典保存到数据库中,或者发送短信等操作。具体实现取决于你的需求和使用的技术栈。这里只是一个简单的示例,演示了如何使用这个通讯录类来实现增删改查的基本操作。你可以根据自己的需求进行扩展和修改。")