更新
This commit is contained in:
53
Python-100-Days/Day01-15/Day08/clock.py
Normal file
53
Python-100-Days/Day01-15/Day08/clock.py
Normal file
@@ -0,0 +1,53 @@
|
||||
"""
|
||||
|
||||
定义和使用时钟类
|
||||
|
||||
Version: 0.1
|
||||
Author: 骆昊
|
||||
Date: 2018-03-08
|
||||
|
||||
"""
|
||||
|
||||
import time
|
||||
import os
|
||||
|
||||
|
||||
class Clock(object):
|
||||
|
||||
# Python中的函数是没有重载的概念的
|
||||
# 因为Python中函数的参数没有类型而且支持缺省参数和可变参数
|
||||
# 用关键字参数让构造器可以传入任意多个参数来实现其他语言中的构造器重载
|
||||
def __init__(self, **kw):
|
||||
if 'hour' in kw and 'minute' in kw and 'second' in kw:
|
||||
self._hour = kw['hour']
|
||||
self._minute = kw['minute']
|
||||
self._second = kw['second']
|
||||
else:
|
||||
tm = time.localtime(time.time())
|
||||
self._hour = tm.tm_hour
|
||||
self._minute = tm.tm_min
|
||||
self._second = tm.tm_sec
|
||||
|
||||
def run(self):
|
||||
self._second += 1
|
||||
if self._second == 60:
|
||||
self._second = 0
|
||||
self._minute += 1
|
||||
if self._minute == 60:
|
||||
self._minute = 0
|
||||
self._hour += 1
|
||||
if self._hour == 24:
|
||||
self._hour = 0
|
||||
|
||||
def show(self):
|
||||
return '%02d:%02d:%02d' % (self._hour, self._minute, self._second)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
# clock = Clock(hour=10, minute=5, second=58)
|
||||
clock = Clock()
|
||||
while True:
|
||||
os.system('clear')
|
||||
print(clock.show())
|
||||
time.sleep(1)
|
||||
clock.run()
|
||||
Reference in New Issue
Block a user