在类

时间:2016-10-19 11:10:49

标签: python clock

侧计数器类中的整个计数器方法列表不起作用。我想要setcap设置上限,并检查上限以查看每个计数器是否已达到其极限,因为hr min sec是时钟应该知道我想在时钟内初始化它们。

import time

class counter():
    count = 0
    cap = 0
    def _init_(self):pass
    def reset(self):
        self.count = 0
    def increment(self):
        self.count += 1
    def setcap(self,x):
        print x
        self.cap = x
    def checkcap(self):
        if self.cap > self.count:
            return False
        else:
            return True
class clock():
    _hr = counter()
    _min = counter()
    _sec = counter()
    def _init_(self):
        self._hr.setcap(23)
        self._min.setcap(59)
        self._sec.setcap(59)
    def manualreset(self):
        self._hr.reset()
        self._min.reset()
        self_sec.reset()
    def tick(self):
        if self._sec.checkcap():
            self._sec.reset()
            self._min.increment()
            if self._min.checkcap():
                self._min.reset()
                self._hr.increment()
                if self._hr.checkcap():
                    self._hr.reset()
        else:
            self._sec.increment()
newClock =  clock()

raw_input("Press enter to start clock")
while newClock._hr != 24:
    newClock.tick()
    print str(newClock._hr.count).zfill(2) + str(newClock._min.count).zfill(2) + str(newClock._sec.count).zfill(2)

1 个答案:

答案 0 :(得分:0)

您的代码中的一个问题是您的init函数是 init 。 尝试使用

def __init__(self):
    pass

这应解决您的一个问题