From b11ca22119a9216ffcd69ed6bf25886391b3c99b Mon Sep 17 00:00:00 2001 From: schaermicha1 Date: Fri, 13 Mar 2026 19:06:10 +0100 Subject: [PATCH] train kata "Who likes it?" --- src/codewars/WhoLikesIt.py | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 src/codewars/WhoLikesIt.py diff --git a/src/codewars/WhoLikesIt.py b/src/codewars/WhoLikesIt.py new file mode 100644 index 0000000..8324a7f --- /dev/null +++ b/src/codewars/WhoLikesIt.py @@ -0,0 +1,26 @@ +def likes(names): + length = len(names[:4]) + + match length: + case 0: + return "no one likes this" + case 1: + return f"{names[0]} likes this" + case 2: + return f"{names[0]} and {names[1]} like this" + case 3: + return f"{names[0]}, {names[1]} and {names[2]} like this" + case _: + return f"{names[0]}, {names[1]} and {len(names) - 2} others like this" + + +if __name__ == "__main__": + assert likes([]) == "no one likes this" + assert likes(["Peter"]) == "Peter likes this" + assert likes(["Jacob", "Alex"]) == "Jacob and Alex like this" + assert likes(["Max", "John", "Mark"]) == "Max, John and Mark like this" + assert ( + likes(["Alex", "Jacob", "Mark", "Max"]) == "Alex, Jacob and 2 others like this" + ) + + print("All tests passed!")