季夏。。。 发表于 2022-10-24 15:31:34

关于Mytimer()

import time
t1= MyTimer()


我是看小甲鱼那个简单定制那个视频跟着敲的,但是就这两行就报错了。


File "c:\Users\admin\Desktop\10.16\.vscode\10.16.py", line 2, in <module>
    t1= MyTimer()
NameError: name 'MyTimer' is not defined

jackz007 发表于 2022-10-24 15:34:32

本帖最后由 jackz007 于 2022-10-24 15:43 编辑

import time

class MyTimer():

    def __init__(self):
      self.unit = ['年','月','天','小时','分钟','秒']
      self.prompt = '未开始计时'
      self.lasted = []
      self.begin = 0
      self.end = 0

    def __str__(self):
      return self.prompt

    def __and__(self, other):
      prompt="总共运行时间"
      result =[]
      for index in range(6):
            result.append(self.lasted + other.lasted)
            if result:
                prompt += (str(result) + self.unit)
      return prompt

    __repr__ = __str__
    def start(self):
      self.begin=time.localtime()
      self.prompt =("提示:请先调用stop()停止计时!")
      print("计时开始...")

    def stop(self):
      if not self.begin:
            print("提示:请先调用start()开始计时!")
      else:
            self.end = time.localtime()
            self._calc()
            print("计时结束")

    def _calc(self):
      self.lasted = []
      self.prompt = "总共运行了"
      for index in range(6):
            self.lasted.append(self.end - self.begin)
            if self.lasted:
                self.prompt += (str(self.lasted) + self.unit)
      self.begin = 0
      self.end = 0

t1 = MyTimer()

       MyTimer() 是你自己写的一个类,得先有定义,才能使用。
页: [1]
查看完整版本: 关于Mytimer()