if dfn['b1']>dfn['max1'] | (dfn['b1']<dfn['min'] & dfn['b1']>0): dfn['b1']==0这样写正确吗
时间: 2023-10-15 17:07:32 浏览: 162
比较Max and min大小
这个条件语句的写法有一些问题。首先,逻辑运算符的优先级是按照 not、and、or 的顺序进行的,所以 `dfn['b1']<dfn['min'] & dfn['b1']>0` 中的 `&` 会先被执行。其次,你想要比较是否相等时应该使用 `==` 而不是 `=`。
正确的写法应该是这样的:
```python
if dfn['b1'] > dfn['max1'] or (dfn['b1'] < dfn['min'] and dfn['b1'] > 0):
dfn['b1'] = 0
```
在这个条件语句中,`or` 表示或者关系,`and` 表示并且关系。其中,当 `dfn['b1']` 大于 `dfn['max1']` 或者同时 `dfn['b1']` 小于 `dfn['min']` 且大于 0 时,才会将 `dfn['b1']` 的值赋为 0。
阅读全文