From 65b0277092c6cf08d2985603cfeb2be02e3b967b Mon Sep 17 00:00:00 2001 From: RomanSanaye Date: Tue, 28 Jul 2026 11:33:56 +0100 Subject: [PATCH 1/3] cowsay implemented --- implement-cowsay/main.py | 17 +++++++++++++++++ implement-cowsay/requirements.txt | 1 + 2 files changed, 18 insertions(+) create mode 100644 implement-cowsay/main.py create mode 100644 implement-cowsay/requirements.txt diff --git a/implement-cowsay/main.py b/implement-cowsay/main.py new file mode 100644 index 000000000..cf5fc92b0 --- /dev/null +++ b/implement-cowsay/main.py @@ -0,0 +1,17 @@ +import cowsay +import argparse + +parser = argparse.ArgumentParser() + +parser.add_argument("--animal", default="cow") +parser.add_argument("message", nargs="+") + +args = parser.parse_args() +message = " ".join(args.message) + +if args.animal == "turtle": + cowsay.turtle(message) +elif args.animal == "dragon": + cowsay.dragon(message) +else: + cowsay.cow(message) diff --git a/implement-cowsay/requirements.txt b/implement-cowsay/requirements.txt new file mode 100644 index 000000000..9e0634373 --- /dev/null +++ b/implement-cowsay/requirements.txt @@ -0,0 +1 @@ +cowsay==6.1 From ddae9b96356c3720b55e975cd2fa15ac5aeeeb79 Mon Sep 17 00:00:00 2001 From: RomanSanaye Date: Tue, 28 Jul 2026 11:59:42 +0100 Subject: [PATCH 2/3] file name changed to cow.py --- implement-cowsay/{main.py => cow.py} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename implement-cowsay/{main.py => cow.py} (100%) diff --git a/implement-cowsay/main.py b/implement-cowsay/cow.py similarity index 100% rename from implement-cowsay/main.py rename to implement-cowsay/cow.py From a20739a8bde9bc42ee5855048b99bd7edbc7e588 Mon Sep 17 00:00:00 2001 From: RomanSanaye Date: Tue, 4 Aug 2026 21:33:12 +0100 Subject: [PATCH 3/3] Imported the valid animal list from cowsay library --- implement-cowsay/cow.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/implement-cowsay/cow.py b/implement-cowsay/cow.py index cf5fc92b0..3bb11ab58 100644 --- a/implement-cowsay/cow.py +++ b/implement-cowsay/cow.py @@ -3,15 +3,16 @@ parser = argparse.ArgumentParser() -parser.add_argument("--animal", default="cow") +parser.add_argument("--animal", default="cow", choices=cowsay.char_names) parser.add_argument("message", nargs="+") args = parser.parse_args() message = " ".join(args.message) -if args.animal == "turtle": - cowsay.turtle(message) -elif args.animal == "dragon": - cowsay.dragon(message) -else: - cowsay.cow(message) +# getting list of animals names from the cowsay library, using (char_names); +animals = cowsay.char_names + +for animal in animals: + if args.animal == animal: + print(cowsay.get_output_string(animal, message)) + break