编辑联系人
本课属于 Coddy Python 学习旅程的“逻辑与流程”单元。第 20 课,共 78 课。
挑战
简单下一步是创建 edit_contact 函数。这个函数可以让用户更新联系人簿中现有联系人的详细信息。
你的任务:
- 创建一个名为
edit_contact的函数,它接受一个参数:contact_book(一个字典)。 - 获取用户想要编辑的联系人的姓名。
- 检查
contact_book中是否存在这个姓名:- 如果存在,提示用户依次输入联系人的新电话、电子邮件和地址(顺序不能错!)。
- 如果用户没有输入任何内容(直接按 Enter),则保留该字段的当前值(此时输入的内容是空字符串
'')。 - 更新字典中的联系人信息。
- 打印:
"Contact updated successfully!"。
- 如果联系人不存在,打印:
"Contact not found!"。
记住:只有当联系人存在于联系人簿中时,才读取电话、电子邮件和地址的输入。如果找不到联系人,请立即打印错误消息,不要尝试读取其他输入。
预期行为:
对于包含以下内容的 contact_book:
{"Alice": {"phone": "123-456-7890", "email": "alice@example.com", "address": "123 Main St"}}如果用户输入:
Alice
987-654-3210
456 Elm St更新后的 contact_book 应如下所示:
{"Alice": {"phone": "987-654-3210", "email": "alice@example.com", "address": "456 Elm St"}}如果用户输入一个不存在的姓名:
Bob输出应为:
Contact not found!亲手试试
def display_menu():
print("Contact Book Menu:")
print("1. Add Contact")
print("2. View Contact")
print("3. Edit Contact")
print("4. Delete Contact")
print("5. List All Contacts")
print("6. Exit")
def add_contact(contact_book):
name = input()
if name in contact_book:
print("Contact already exists!")
return
phone = input()
email = input()
address = input()
contact_book[name] = {"phone": phone, "email": email, "address": address}
print("Contact added successfully!")
def view_contact(contact_book):
name = input()
if name in contact_book:
contact = contact_book[name]
print(f"Name: {name}")
print(f"Phone: {contact['phone']}")
print(f"Email: {contact['email']}")
print(f"Address: {contact['address']}")
else:
print("Contact not found!")逻辑与流程中的所有课
自己练习: Python 在线编译器