设计一个名为 Time 的类。这个类包含: • 表示时间的数据域 hour、minute 和 second。 • 一个以当前时间创建 Time 对象的无参构造方法(数据域的值表示当前时间)。 • 一个构造 Time 对象的构造方法,这个对象有一个特定的时间值,这个值是以毫秒表示的、从 1970 年 1 月丨日午夜开始到现在流逝的时间段(数据域的值表示这个时间)。 • 三个数据域 hour、minute 和 second各自的 get 方法。 • — 个名为 setTimeClong elapseTime)的方法使用流逝的时间给对象设置一个新时间。例 如,如果流逝的时间为 555550000毫秒,則转换为10小时、10分钟、10 秒。 编写一个测试程序,通过键盘输入想要转换的毫秒数,调用有参构造方法生成, 然后显示它们的小时、分钟和秒。 测试范例如下: 输入:66666666 输出:18:31:6
时间: 2024-03-24 21:40:12 浏览: 76
好的,根据你的要求,我已经理解了你的问题。以下是实现你要求的 Time 类的代码,包括构造函数、get 方法和 setTime 方法,并附带了一个用于测试的 main 函数:
```python
import time
class Time:
def __init__(self):
current_time = time.localtime()
self.hour = current_time.tm_hour
self.minute = current_time.tm_min
self.second = current_time.tm_sec
def __init__(self, elapsed_time):
total_seconds = elapsed_time // 1000
self.hour = total_seconds // 3600
self.minute = (total_seconds % 3600) // 60
self.second = total_seconds % 60
def get_hour(self):
return self.hour
def get_minute(self):
return self.minute
def get_second(self):
return self.second
def set_time(self, elapsed_time):
total_seconds = elapsed_time // 1000
self.hour = total_seconds // 3600
self.minute = (total_seconds % 3600) // 60
self.second = total_seconds % 60
if __name__ == "__main__":
elapsed_time = int(input("请输入毫秒数: "))
time_obj = Time(elapsed_time)
print(f"{time_obj.get_hour()}:{time_obj.get_minute()}:{time_obj.get_second()}")
```
你可以将这段代码复制到 Python 环境中,运行测试程序输入毫秒数,就可以得到测试输出结果了。
阅读全文