我目前正在我的Python程序中使用assert
来停止程序,如果收到不正确的值以阻止其余代码运行。
这是最佳方式,还是if value == x
然后break
会更好,还是有更好的方法来同时向用户提供反馈?
这就是我目前确保只接收到4的值并且程序无法继续运行的方式。
assert relayDecoded['relayCmd'] == 4 # Otherwise the relay_connect have not been received (Usually down to a time out)
答案 0 :(得分:0)
如果您在某个函数中期待4
,那么我会引发ValueError
异常,如果收到非int值,则会TypeError
。
如果您希望用户输入4
,那么我会打印错误消息并break
执行或使用sys.exit()
。