用python数据结构顺序表编辑通讯录
时间: 2023-07-12 13:45:53 浏览: 50
好的,以下是用 Python 数据结构顺序表实现的通讯录编辑代码:
```python
class Contact:
def __init__(self, name, phone):
self.name = name
self.phone = phone
class ContactList:
def __init__(self):
self.contacts = []
def add_contact(self, name, phone):
contact = Contact(name, phone)
self.contacts.append(contact)
def remove_contact(self, name):
for contact in self.contacts:
if contact.name == name:
self.contacts.remove(contact)
return
def update_contact(self, name, phone):
for contact in self.contacts:
if contact.name == name:
contact.phone = phone
return
def search_contact(self, name):
for contact in self.contacts:
if contact.name == name:
return contact.phone
def display_contacts(self):
for contact in self.contacts:
print(f"{contact.name}: {contact.phone}")
contact_list = ContactList()
while True:
print("***************************")
print("欢迎使用通讯录")
print("1. 添加联系人")
print("2. 删除联系人")
print("3. 修改联系人")
print("4. 查找联系人")
print("5. 显示所有联系人")
print("0. 退出程序")
print("***************************")
choice = int(input("请输入对应操作的数字:"))
if choice == 0:
break
elif choice == 1:
name = input("请输入联系人姓名:")
phone = input("请输入联系人电话:")
contact_list.add_contact(name, phone)
print("联系人添加成功!")
elif choice == 2:
name = input("请输入要删除的联系人姓名:")
contact_list.remove_contact(name)
print("联系人删除成功!")
elif choice == 3:
name = input("请输入要修改的联系人姓名:")
phone = input("请输入修改后的电话号码:")
contact_list.update_contact(name, phone)
print("联系人修改成功!")
elif choice == 4:
name = input("请输入要查找的联系人姓名:")
phone = contact_list.search_contact(name)
if phone:
print(f"{name}的电话号码是:{phone}")
else:
print("联系人不存在!")
elif choice == 5:
contact_list.display_contacts()
else:
print("无效的选择,请重新输入!")
```
这个程序中,我们定义了两个类:`Contact` 和 `ContactList`。`Contact` 类表示一个联系人,包括姓名和电话号码;`ContactList` 类表示一个通讯录,包含了添加联系人、删除联系人、修改联系人、查找联系人和显示所有联系人等操作。
在程序运行时,我们不断循环,根据用户输入的选择执行相应的操作。用户可以通过输入数字来选择不同的操作。每个操作都会调用 `ContactList` 中对应的方法来实现功能。