[英]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.