Skip to content

Yan Zhou | Oct2025-1 | Tools | Sprint 4 | Cowsay Python - #7

Open
yanzhou-git wants to merge 1 commit into
mainfrom
cowsay
Open

Yan Zhou | Oct2025-1 | Tools | Sprint 4 | Cowsay Python#7
yanzhou-git wants to merge 1 commit into
mainfrom
cowsay

Conversation

@yanzhou-git

Copy link
Copy Markdown
Owner

✅ Self-Checklist
I successfully interfaced with a third-party library (cowsay) instead of writing logic from scratch.
I dynamically fetched library metadata (char_names) to avoid hardcoding choices.
I used argparse to enforce valid inputs and generate standardized help menus.
I managed variable-length positional arguments using nargs='+'.
I validated that the tool fails correctly when provided with invalid parameters (like the fish example).

🔄 Changelist
Integrated Third-Party Library: Imported cowsay and used get_output_string for dynamic art generation.
Dynamic Argument Validation: Linked argparse.choices to cowsay.char_names for automated error handling.
String Processing: Implemented "".join() to convert list-based message inputs into a single printable string.
CLI Personalization: Configured the prog and description fields in argparse to match specific project requirements.
Sorting Logic: Applied sorted() to the library’s animal set to ensure a predictable and user-friendly --help interface.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant