python 设计一个Time类,表示一个时间,它包括: 1)三个成员变量 h, m, s, 分别表示时、分、秒; 2)一个构造方法__init__( ),创建一个时间实例; 3)一个showTime12( )方法,用于显示12小时制格式的时间; 4)一个showTime24( )方法,用于显示24小时制格式的时间。 从键盘输入三个整数(以空格为间隔),分别表示时、分、秒,要求输出其12小时制和24小时制的时间形式。注:12小时格式显示时间,如“09:20:45 AM”、“03:15:20 PM”(AM和PM前有一空格)。24小时格式显示时间,如“09:20:45”、“15:15:20”。如果时、分、秒的值不在合理范围内,则统一取0值。 类的定义: class Time: #类的定义代码 pass 裁判测试程序样例: ''' 请在这里给出类的定义''' hh, mm, ss = [int(x) for x in input().split()] t = Time(hh, mm, ss) t.showTime12() t.showTime24() 输入格式: 从键盘输入三个整数(以空格为间隔),分别表示时、分、秒。 输出格式: 输出分两行,第一行是时间的12小时形式,第二行是时间的24小时形式。其中,时、分、秒分别占两位,不足两位用0补齐。若时、分、秒不在合理范围内,则统一取0值。 输入样例1: 在这里给出一组输入。例如: 13 2 45 输出样例1: 在这里给出相应的输出。例如: 01:02:45 PM 13:02:45 输入样例2: 在这里给出一组输入。例如: 13 2 65 输出样例2: 在这里给出相应的输出。例如: 00:00:00 00:00:00
时间: 2023-06-17 14:03:51 浏览: 158
```python
class Time:
def __init__(self, h, m, s):
if h < 0 or h > 23:
h = 0
if m < 0 or m > 59:
m = 0
if s < 0 or s > 59:
s = 0
self.h = h
self.m = m
self.s = s
def showTime12(self):
suffix = "AM"
hour = self.h
if hour >= 12:
suffix = "PM"
hour -= 12
if hour == 0:
hour = 12
print("{:02d}:{:02d}:{:02d} {}".format(hour, self.m, self.s, suffix))
def showTime24(self):
print("{:02d}:{:02d}:{:02d}".format(self.h, self.m, self.s))
hh, mm, ss = [int(x) for x in input().split()]
t = Time(hh, mm, ss)
t.showTime12()
t.showTime24()
```
注意:
- 在构造方法中需要对输入的时、分、秒进行合理性校验;
- 在 showTime12() 方法中,需要判断是 AM 还是 PM,并进行格式化输出;
- 所有输出的时、分、秒都需要占两位,不足两位需要用 0 补齐。
阅读全文