首页 > 解决方案 > 没有()的评估顺序是什么?

问题描述

我不明白为什么这个函数返回 2.0。

1+1/2*2

对于运算顺序,我认为它会先乘法,然后是除法,从左到右,所以 1+1/4 到 1+.25 甚至可能返回 2/4 =0.5...

我真的很困惑它如何输出 2.0。

提前致谢!目前正在准备考试。

标签: pythonmath

解决方案


至于乘除,顺序是从左到右。所以这里首先是划分。1 + 1 / 2 * 2 = 1 + 0.5 * 2 = 1 + 1 = 2

对于下一个问题,我认为if a == 'A' or 'B'是 2 个表达式,a == 'A'并且'B'. 我学过一点 C++,'B' 指的是 ASCII 中的 66,不是 0,所以表达式 'B' 总是正确的。也许在python中它会是一样的。所以代码应该是if a == 'A' or a == 'B':


推荐阅读