繁体   English   中英

如何使我所有的for循环同时运行

[英]How to make all of my for loop runs at the same time

我很少有for循环,以0.5秒的间隔闪烁对象5秒钟。 我试图找出如何使所有这些对象同时闪烁,换句话说,我想同时运行所有的for循环。

需要帮忙!

        count1=5

        for k in range (count1):
            error.setFill('grey')
            time.sleep(.50)
            error.setFill('orange')
            time.sleep(.50)

        for l in range (count1):              
            go.setFill('red')
            time.sleep(.50)
            go.setFill('green')
            time.sleep(.50)

        for m in range (count1):               
            warning.setFill('black')
            time.sleep(.50)
            warning.setFill('red')
            time.sleep(.50)

        for u in range (count1):
            Verify.setFill('green')
            time.sleep(.50)
            Verify.setFill('grey')
            time.sleep(.50)

        for w in range (count1):
            Launch.setFill('red')
            time.sleep(.50)
            Launch.setFill('green')
            time.sleep(.50)

这是一种简单的方法,假设setFill()足够快,因此它们似乎同时打开和关闭。

count1=5

for k in range (count1):
    # Turn on
    error.setFill('grey')
    go.setFill('red')
    warning.setFill('black')
    Verify.setFill('green')
    Launch.setFill('red')
    time.sleep(.50)
    # Turn off
    error.setFill('orange')
    go.setFill('green')
    warning.setFill('red')
    Verify.setFill('grey')
    Launch.setFill('green')
    time.sleep(.50)

在另一种情况下,您将需要为每个光源创建一个新线程。

既然所有循环都在count1范围内运行,为什么不在同一循环中运行所有命令,例如:

    count1=5

    for n in range (count1):
    # first line of each loop
        error.setFill('grey')
        go.setFill('red')
        warning.setFill('black')
        Verify.setFill('green')
        Launch.setFill('red')
    # pause and then third line of each loop
        time.sleep(.50) 
        error.setFill('orange')
        go.setFill('green')         
        warning.setFill('red')
        Verify.setFill('grey')
        Launch.setFill('green')
        time.sleep(.50)

然后,它可以一次运行所有循环,或者宁愿在同一循环中运行,并且省力省力。 希望有帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM