diff options
| author | 冯昶 <seaker@qq.com> | 2021-03-15 18:13:51 +0800 |
|---|---|---|
| committer | 冯昶 <seaker@qq.com> | 2021-03-15 18:13:51 +0800 |
| commit | 8b6be37fe4dac8b4c6489a95e55514b76b298d15 (patch) | |
| tree | ae36c8ec2c71f606c0e36adaa19dba366a68a0b4 /challenge-100/abigail/python/ch-1.py | |
| parent | 865acfd056fb6f409ec6b1a81d60b931cbcb69fe (diff) | |
| parent | c9aec2da6bcb04b488183f09ca94bee488557aff (diff) | |
| download | perlweeklychallenge-club-8b6be37fe4dac8b4c6489a95e55514b76b298d15.tar.gz perlweeklychallenge-club-8b6be37fe4dac8b4c6489a95e55514b76b298d15.tar.bz2 perlweeklychallenge-club-8b6be37fe4dac8b4c6489a95e55514b76b298d15.zip | |
Merge branch 'master' of github.com:seaker/perlweeklychallenge-club
Diffstat (limited to 'challenge-100/abigail/python/ch-1.py')
| -rw-r--r-- | challenge-100/abigail/python/ch-1.py | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/challenge-100/abigail/python/ch-1.py b/challenge-100/abigail/python/ch-1.py new file mode 100644 index 0000000000..c236191663 --- /dev/null +++ b/challenge-100/abigail/python/ch-1.py @@ -0,0 +1,50 @@ +#!/opt/local/bin/python + +# +# See ../README.md +# + +# +# Run as python ch-1.py < input-file +# + +import fileinput +import re + + +for line in fileinput . input (): + # + # Parse input + # + hour, minute, ampm = re . compile (r'([0-9]+):([0-9]+)\s*([ap]?)') \ + . match (line) \ + . groups () + # + # Make sure we have integers + # + hour = int (hour) + minute = int (minute) + + # + # Calculate new AM/PM marker + # + new_ampm = "" + if ampm == "": + if hour >= 12: + new_ampm = "pm" + else: + new_ampm = "am" + + # + # Calculate new hour + # + hour = hour % 12 + if ampm == "" and hour == 0: + hour = 12 + if ampm == "p": + hour = hour + 12 + + # + # Print result + # + print ("{:02d}:{:02d}{:s}" . format (hour, minute, new_ampm)) |
