在python中使用while循环作为等待

时间:2013-05-23 18:03:43

标签: python while-loop

我已经在C / C ++中完成了这个,之前我有一个while循环,它作为一个等待程序,直到条件被破坏。在Python中,我试图对while(GPIO.input(24) != 0):做同样的事情,并且它说它期待缩进。无论如何都要让脚本挂起这个语句,直到条件被破坏?

4 个答案:

答案 0 :(得分:16)

请注意,空的while循环会占用资源,因此如果您不介意降低时间分辨率,则可以包含sleep语句:

while (GPIO.input(24) != 0):
    time.sleep(0.1)

使用较少的CPU周期,同时仍以合理的频率检查条件。

答案 1 :(得分:15)

在Python中,只要需要空块,就需要使用pass语句。

while (GPIO.input(24) != 0):
    pass

答案 2 :(得分:7)

添加pass,如下:

while(GPIO.input(24) != 0):
    pass

您可能还会考虑采用其他方法:

while True:
    if GPIO.input(24) == 0: break

无论你认为哪个更具可读性。

答案 3 :(得分:3)

在python中,你不能将冒号:挂起,所以你必须使用pass来完成空块。以这种方式使用while的另一种方式

 while True:
     if GPIO.input(24) == 0:
         break