diff --git a/samples/book-app-project/book_app.py b/samples/book-app-project/book_app.py index f0100c2d..70191d0f 100644 --- a/samples/book-app-project/book_app.py +++ b/samples/book-app-project/book_app.py @@ -6,7 +6,7 @@ collection = BookCollection() -def show_books(books): +def show_books(books: list) -> None: """Display books in a user-friendly format.""" if not books: print("No books found.") @@ -21,16 +21,24 @@ def show_books(books): print() -def handle_list(): +def handle_list() -> None: books = collection.list_books() show_books(books) -def handle_add(): +def handle_add() -> None: print("\nAdd a New Book\n") title = input("Title: ").strip() + if not title: + print("\nError: Title cannot be empty.\n") + return + author = input("Author: ").strip() + if not author: + print("\nError: Author cannot be empty.\n") + return + year_str = input("Year: ").strip() try: @@ -41,7 +49,7 @@ def handle_add(): print(f"\nError: {e}\n") -def handle_remove(): +def handle_remove() -> None: print("\nRemove a Book\n") title = input("Enter the title of the book to remove: ").strip() @@ -50,7 +58,7 @@ def handle_remove(): print("\nBook removed if it existed.\n") -def handle_find(): +def handle_find() -> None: print("\nFind Books by Author\n") author = input("Author name: ").strip() @@ -59,7 +67,7 @@ def handle_find(): show_books(books) -def show_help(): +def show_help() -> None: print(""" Book Collection Helper @@ -72,7 +80,7 @@ def show_help(): """) -def main(): +def main() -> None: if len(sys.argv) < 2: show_help() return