Final Project: Contact Book CLI
Time to combine everything, functions, collections, classes, and files, into one program.
Requirements
- Represent each contact with a class (or dictionary) storing a name, phone number, and email.
- Support adding a new contact and listing all contacts.
- Support searching for a contact by name, and handle the case where no match is found without crashing.
- Persist contacts to a text or JSON file so they survive between runs, using what you learned about file I/O.
- Write at least one function with a clear docstring and type hints.
Stretch goals
- Support deleting a contact.
- Sort the contact list alphabetically by name.
- Use the
jsonmodule to save and load contacts as structured JSON instead of plain text.
Submit your repository link below when you are done, an instructor will review it before you can mark this lesson complete. Good luck! 🚀