|  | 
 
| 
本帖最后由 lhj390 于 2017-12-17 16:57 编辑
x
马上注册,结交更多好友,享用更多功能^_^您需要 登录 才可以下载或查看,没有账号?立即注册  
 复制代码import time
class MyTimer:
    def __init__(self):
        self.unit = ['年','月','日','时','分','秒']
        self.prompt = '未开始计时'
        self.lasted = []
        self.begin = 0
        self.end = 0
        
    #开始计时
    def start(self):
        self.begin = time.localtime()
        self.prompt = '请先调用stop()停止计时'
        print('计时开始...')
    def __str__(self):
        return self.prompt
    __repr__ = __str__
为什么运行类的时候self.prompt = '未开始计时'的未开始计时会直接打印出来,运行MyTimer().start()的时候请先调用stop()停止计时不会打印
 
因为你实例化这个 a 的时候它自动调用了__init__方法和__str__方法,但是没有调用start方法,所以它返回的是__init__里的self.prompt | 
 |