diff options
| author | Dave Jacoby <jacoby.david@gmail.com> | 2022-11-14 09:29:47 -0500 |
|---|---|---|
| committer | Dave Jacoby <jacoby.david@gmail.com> | 2022-11-14 09:29:47 -0500 |
| commit | b43c7c0901bac835315fe78c39db7528e9a9a58d (patch) | |
| tree | dbe607f12c2ea0a4413a552332c40111b2fbbc80 /challenge-190/mohammad-anwar/python | |
| parent | 2e12c850a19098123c635ccacfa30b69f6ba66dc (diff) | |
| parent | 377a415bb53d1ed0b16b70d190bb444241216036 (diff) | |
| download | perlweeklychallenge-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.py | 48 |
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() |
