0

我正在尝试创建一个类似秒表的 gui 应用程序(wxpython)。我有按钮:开始、停止、重置和显示 00:00.0(mm:ss:tt、分钟、秒、十分之一秒)的帧。但是,我很难尝试使用整数获得正确的输出。我想要这个输出,例如:

...
...
...
TICK = 0
t_format = u"%02d:%02d.%02d" % (min, sec, t_sec)

...t_format(0) -> 0:00.0
...t_format(12) -> 0.01.2
...t_format(321) -> 0:32.1

...
...
...

while (self.stop != True) or (self.reset != True):
    t_format(TICK)

    TICK += 1

...
...
...
4

1 回答 1

2

使用整数除法和取模将十分之一秒转换为分、秒和十分之一:

def t_format(tt):
    sec = tt / 10
    return '%02d:%02d.%01d' % (sec / 60, sec % 60, tt % 10)

但是,您的代码需要小心在每个滴答之间休眠大约十分之一秒。例如:

TICK += 1
to_sleep = (start_time + TICK / 10.0) - time.time()
if to_sleep > 0:
    time.sleep(to_sleep)
于 2013-05-13T13:44:34.560 回答