Python程序对事件做出反应

时间:2016-11-28 20:25:49

标签: python-3.x robot

我用Python编程"机器人控制器"控制V-Rep模拟机器人。我的机器人有一个接近传感器可以是真的(如果它在他面前检测到某些东西)或假的(如果它在前面是免费的)。我希望只要我的Sensor从False变为True,Python程序就会做出反应,例如,调用一个过程。

传感器的状态存储在Python的布尔变量中,但我当然会避免繁忙的等待形式:

While True:
    if sensor_state:
       # Do Something

我希望在程序的正常流程中,只要sensor_state发生变化,就必须完成一些语句。

感谢您的建议。

1 个答案:

答案 0 :(得分: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循环,因为您需要程序在此期间执行其他操作,那么请查看使用“threading”模块将函数作为单独的线程调用。