优先级Python%和/

时间:2016-04-08 14:43:05

标签: python python-2.7

我不理解Python 2.7中模运算符和除法之间的顺序

图片:Precedence

在Python Shell中:

>>> 86%3/10
0
>>> 86/3%10
8

第一个模块???第二师??

感谢。

4 个答案:

答案 0 :(得分:1)

它们具有相同的优先级并从左到右进行评估。 因此86%3/10相当于((86%3)/10)86/3%10相当于((86/3)%10)

答案 1 :(得分:0)

>>> 86%3/10 -> 86%3 = 2 -> 2/10 = 0
0
>>> 86/3%10 -> 86/3 = 28 -> 28%10 = 8
8

如果你想要浮点数

>>> 86%3/10.0
0.2
>>> 86/3.0%10
8.666666666666668

答案 2 :(得分:0)

Python是Leftmost Derivation

/ *%在同一组但最左边第一个

答案 3 :(得分:0)

如果两个操作的优先级相等(这里的情况就是%和/具有相同的优先级),那么在Python中它从左到右。