while循环和if语句中的计时器更新?

Timer update inside while loop & if statement?

我正在 Python 构建我的第一个计时器并研究 时间模块 。这就是我想要的:

  1. 在while循环中,当if条件“A”第一次真时,启动定时器

  2. 10秒后触发事件

  3. 30 秒后,清除计时器,以便在条件“A”为真时重新开始

我觉得我已经准备好了所有的积木,但仍然无法启动 10 秒计时器。在伪代码中,我想要这个:

if current_time - the_time_from_first_if_statement_match > 10:
        do something

这就是我现在拥有的。任何帮助表示赞赏!

def main():

start_time = time.time() 
time_limit = 10

while True:
   current_time = time.time() #keeps updating
   matchresult = video_process.match

   if matchresult == True:
      elapsed_time = current_time - start_time #can be anything like 14 or 100 at this point, I'd just want a 10 sec timer

      if elapsed_time > time_limit:
         print("do something")

大致如下:

while True:
    while not condition:
        ...
    start_time = ...
    while elapsed_time < 10:
        ...
    do_something
    while elapsed_time < 30:
        ...