使用Python的条件语句中存在多个逻辑运算符的间歇性问题

使用Python的条件语句中存在多个逻辑运算符的间歇性问题,python,Python,我有一个问题,即使所有条件都不满足,也会触发条件语句 例如,在这段代码中 if ( (time_up_fmt <= clock_fmt <= buffer_up) and (lux_src >= light_sw and lux_src != 999999) and ("Down" == last_action) or

我有一个问题,即使所有条件都不满足,也会触发条件语句

例如,在这段代码中

        if (
            (time_up_fmt <= clock_fmt <= buffer_up) and
            (lux_src >= light_sw and
            lux_src != 999999) and
            ("Down" == last_action)
            or
            (approx_up_min <= clock_fmt <= approx_up_max) and
            ("Down" == last_action)
    ):

        print("going up")
if(

(time-up-fmt可能是if语句的第二部分,“or”部分触发了真实条件

A=(time-up-fmt我不这么认为,第二部分大约是打印第二部分,看看它是否计算为假打印((你为什么说C为假,D为真?我想说的是,根据你的描述,整个表达式有可能计算为真。我鼓励你通过指定实数来代替变量来检查条件。另外,根据脚本中的值,我不认为它包含在“如果”中阻止。如果您仍然发现意外情况,请发布所有变量的值。这将帮助我们了解发生了什么。我在问题中添加了指向完整脚本的链接。您不能访问它吗?
    A         B         C        D        E
>>> False and False and False or True and True
True