首页 > 解决方案 > 依次从数组运行倒数计时器

问题描述

我有一个数组,其中的值表示特定交叉路口的红绿灯绿灯秒数,我希望倒计时从第一个值开始,然后移动到下一个值,并在最后一个值结束后该过程再次重新启动,给出红色值并等待每个交叉点。

array=[20,10,15,30]

标签: python

解决方案


您可以使用让进程在无限循环time.sleep()中等待 T 秒(对于每个 T in )。times

import time

times = [20, 10, 15, 30]
while True: # Runs until you terminate the process
    for i in range(len(times)): 
        print("Light {} is green.".format(i+1))
        time.sleep(times[i])

循环将打印出:

Light 1 is green.

# 20 seconds later
Light 2 is green.

# 10 seconds later
Light 3 is green.

# 15 seconds later
Light 4 is green

# 30 seconds later 
Light 1 is green

# And repeat

推荐阅读