python
import time as aclass MyTimer:
def __str__(self):
return self.prompt
__repr__ = __str__
def start(self):
self.start = a.localtime()
print('计时开始...')
def stop(self):
self.stop = a.localtime()
self._calc()
print('计时结束!')
def _calc(self):
self.lasted = []
self.prompt = '总共运行了'
for index in range (6):
self.lasted.append(self.stop - self.start)
self.prompt += str(self.lasted)
如果我打个t1然后回车这四个函数是按照顺序全运行一遍吗,如果我打个t1.start()他就只运行start一个函数吗。
你输入 t1 只会调用 __repr__ 魔法方法,而 __repr__ 被赋值为 __srt__
实际上调用 __repr__ 此时相对于调用 __str__ 是等价的
你输入 t1.start() 只会调用start() 方法
页:
[1]