python - 如何在带有“and”和“or”的if语句中使用括号来使用“or”分隔两个选项。请参阅代码以供参考
问题描述
为什么不能使用带括号的 if 语句来分隔两个 or 选项,如下所示?我忽略了python程序的一些规则或复杂性吗?
if mass >= 2.6 and (sodium or nitrogen) <= 5:
解决方案
我假设您有三个数字变量:质量、钠和氮,并且您想将它们与一些边界值进行比较。然后,您的条件应该看起来像“如果((质量> = 2.6)和((钠<= 5)或(氮<= 5))):”实际上,我认为您可以省略除AND之后的括号之外的所有内容及以下冒号。但是,我个人更喜欢明确地保留它们,以便您有一个清晰的分组(Python 指南可能不建议这样做,但可以)。
如果我做对了,你的错误是你试图在你的数值变量之间使用 OR,然后将结果与 5 进行比较,而你应该将每个变量与 5 进行比较,然后使用 OR 来处理你得到的布尔结果步骤1。
推荐阅读
- java - 从列表性能中获取第一个对象
- ios - Firestore:使用未解析的标识符“Firestore”
- python-3.x - 熊猫在加入列时调整字符串
- javascript - 有没有办法检查每个超时的游戏结束条件,但调用主函数通过单个函数重新启动游戏
- python - 我在表中有一个值,但是当我尝试验证该值是否存在时,它返回 false
- c++ - 链接描述文件中断程序
- javascript - 选择元素未附加 addEventListener
- python - 如何使我的功能不能与另一个功能同时工作?
- sas - 如果变量的条件为真,SAS 计数并汇总
- vba - 使用 VBA 将幻灯片的所有图片保存为单个 JPG 图像