Python数学运算顺序
因为它的评价为:
2 + ((4/2) * 3)
因为*
和/
有higher precedence比+
和它的左到右,当运营商具有相同的优先级。
从文档引用:
下表概括了在Python最高优先级的运算符优先级,从优先级最低(最低结合)(最结合)。同一个框中的运算符具有相同的优先级。除非明确给出语法,否则运算符是二进制的。同一个盒子组中的操作员从左到右(除了取幂,从右到左分组)。
运算符描述
- [...]
+
,-
加减*
,@
,/
,//
,%
乘法,矩阵乘法,除法,地板除法,余数- [...]
是的,除法和乘法首先计算,但乘法不是在除法之前执行,反之亦然。所以: 2 + 4/2 * 3 = 2+2*3 = 2+6 = 8
1.()
2%,/,*
3 +, -
的Python遵循BODMAS规则,你可以说PEMDAS规则。 *括号*指数*乘*除*加*减法
- Python的基础则算遵循BODMAS规则,由于按照分工优先的比multiplication.So高不言而喻这样: 2+(4/2)* 3
- 现在如果你想得到2.66作为你的答案,它必须像2 + 4 /(2 * 3)
如果你想要2。66你还需要python 3 :) –
根据传统的操作顺序,乘法和除法有*相同*优先级;在这种情况下首先完成划分,因为它是最左边的操作。 – trentcl
Python给乘法和除法相同的优先级。
通常,按照从左到右的顺序执行相同的优先级操作。
'/'和'*'是一个接一个地执行的,没有优先级,除非你把它们放在括号内:2 + 4 /(2 * 3)。 – Ardit