aboutsummaryrefslogtreecommitdiff
path: root/challenge-190/mohammad-anwar/python
diff options
context:
space:
mode:
authorDave Jacoby <jacoby.david@gmail.com>2022-11-14 09:29:47 -0500
committerDave Jacoby <jacoby.david@gmail.com>2022-11-14 09:29:47 -0500
commitb43c7c0901bac835315fe78c39db7528e9a9a58d (patch)
treedbe607f12c2ea0a4413a552332c40111b2fbbc80 /challenge-190/mohammad-anwar/python
parent2e12c850a19098123c635ccacfa30b69f6ba66dc (diff)
parent377a415bb53d1ed0b16b70d190bb444241216036 (diff)
downloadperlweeklychallenge-club-b43c7c0901bac835315fe78c39db7528e9a9a58d.tar.gz
perlweeklychallenge-club-b43c7c0901bac835315fe78c39db7528e9a9a58d.tar.bz2
perlweeklychallenge-club-b43c7c0901bac835315fe78c39db7528e9a9a58d.zip
Merge branch 'master' of https://github.com/manwar/perlweeklychallenge-club
Diffstat (limited to 'challenge-190/mohammad-anwar/python')
-rw-r--r--challenge-190/mohammad-anwar/python/ch-1.py48
1 files changed, 48 insertions, 0 deletions
diff --git a/challenge-190/mohammad-anwar/python/ch-1.py b/challenge-190/mohammad-anwar/python/ch-1.py
new file mode 100644
index 0000000000..78d730abea
--- /dev/null
+++ b/challenge-190/mohammad-anwar/python/ch-1.py
@@ -0,0 +1,48 @@
+#!/usr/bin/python3
+
+'''
+
+Week 190:
+
+ https://theweeklychallenge.org/blog/perl-weekly-challenge-190
+
+Task #1: Capital Detection
+
+ You are given a string with alphabetic characters only:
+ A..Z and a..z.
+
+ Write a script to find out if the usage of Capital is appropriate
+ if it satisfies at least one of the following rules:
+
+ 1) Only first letter is capital and all others are small.
+ 2) Every letter is small.
+ 3) Every letter is capital.
+
+'''
+
+import re
+import unittest
+
+def capitalDetection(str) -> bool:
+ if bool(re.search('^[A-Za-z]+$', str)):
+ if bool(re.search('^[A-Z][a-z]+$', str)):
+ return True
+ if bool(re.search('^[a-z]+$', str)):
+ return True
+ if bool(re.search('^[A-Z]+$', str)):
+ return True
+
+ return False;
+
+#
+#
+# Unit test class
+
+class TestCapitalDetection(unittest.TestCase):
+ def test_capitalDetection(self):
+ self.assertTrue(capitalDetection('Perl'), 'Example 1')
+ self.assertTrue(capitalDetection('TPF'), 'Example 2')
+ self.assertFalse(capitalDetection('PyThon'), 'Example 3')
+ self.assertTrue(capitalDetection('raku'), 'Example 4')
+
+unittest.main()