連絡先の編集
CoddyのPythonジャーニー「Logic & Flow」セクションの一部 — レッスン 20/78。
チャレンジ
簡単次のステップは、edit_contact 関数を作成することです。この関数を使用すると、ユーザーは連絡先帳にある既存の連絡先の詳細を更新できるようになります。
あなたのタスク:
- 1つの引数
contact_book(辞書) を受け取るedit_contactという名前の関数を作成します。 - ユーザーが編集したい連絡先の名前の入力を受け取ります。
- その名前が
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!")