如何解决被键盘中断时暂停/恢复定时器
在python中创建一个从00:00:00开始的计时器。如果被键盘中断,计时器应暂停/恢复。请帮助我理解如何使用 KeyboardInterrupt 来暂停/恢复计时器。
import time
def timer():
for i in range(12):
for j in range(60):
for k in range(60):
try:
print("{:02d}:{:02d}:{:02d}".format(i,j,k))
time.sleep(1)
# except KeyboardInterrupt:
# print('Break')
解决方法
这很丑但有效?
import time
def timer(pause_i,pause_j,pause_k):
for i in range(pause_i,12):
for j in range(pause_j,60):
for k in range(pause_k,60):
try:
print(f"{i:02d}:{j:02d}:{k:02d}")
time.sleep(1)
except KeyboardInterrupt:
try:
input('\nCtrl+C to resume\n')
except KeyboardInterrupt:
timer(i + 1,j + 1,k + 1)
timer(0,0)
我觉得用key = input('...')
来恢复定时器比较好,比如
key = input('\ninput r to resume : ')
if key == 'r':
timer(i + 1,k + 1)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。