DEV Community

FaithInErrorsZORO
FaithInErrorsZORO

Posted on

Hello world app with dictionaries and comprehension lists in python.

def add_entry(phone_book):
name = input("Enter name: ").title()
if name in phone_book:
print("There is already an entry for a student by that name, try another name")
else:
phone = input("Enter phone number: ")
phone_book[name] = phone

def search_entry(phone_book):
name = input("Enter name: ").title()
if name in phone_book:
print(f"{name}: {phone_book[name]}")
else:
print("There is no entry for a student by that name.")

def search_prefix(phone_book):
prefix = input("Enter starting letters: ").title()
matches = {k: v for k, v in phone_book.items() if k.startswith(prefix)}
if not matches:
print("No matches found.")
else:
for k in sorted(matches.keys()):
print(f"{k}: {matches[k]}")

def print_book(phone_book):
for key in sorted(phone_book.keys()):
print(f"{key}: {phone_book[key]}")

def main():
phone_book = {}
while True:
choice = input("\n1-Add, 2-Search, 3-Search Prefix, 4-Print All, 5-Exit: ")
if choice == '1': add_entry(phone_book)
elif choice == '2': search_entry(phone_book)
elif choice == '3': search_prefix(phone_book)
elif choice == '4': print_book(phone_book)
elif choice == '5': break
else: print("Error: Invalid choice.")

if name == "main":
main()

Top comments (0)