2016-11-28 123 views
0

我在Python中編程一個控制V-Rep模擬機器人的「機器人控制器」。我的機器人有一個接近傳感器,它可以是真的(如果它檢測到他面前的東西)或假的(如果它前面有空)。我希望一旦我的傳感器從False變爲True,Python程序就會響應,例如,調用一個過程。Python程序對事件做出反應

傳感器的狀態被存儲在一個布爾變量在Python,但我想,當然,避免等待忙碌的形式:

While True: 
    if sensor_state: 
     # Do Something 

我想,該程序的正常流程,在一旦sensor_state發生變化,一些聲明必須完成。

感謝您的建議。

回答

0

如果你可以使用while循環,你可能會像這樣去:

while False: # You said that True indicates there's something ahead 
    if object_ahead: 
     sensor_state = True 

或者,你可以打破循環&的放棄布爾變量一起:

while False: 
    if object_ahead: 
     break 

如果你不能使用while循環,因爲你需要你的程序在這段時間內做其他事情,那麼就使用「線程」模塊來調用一個函數作爲一個單獨的線程。

相關問題