%在计算中是什么?我不知道它是做什么的。

它能算出计算的百分比吗例如4% 2显然等于0。如何?


当前回答

这是一个模运算 http://en.wikipedia.org/wiki/Modulo_operation

http://docs.python.org/reference/expressions.html

根据运算的顺序,结果是

(3+2+1-5) + (4%) 2 - (1/4) + 6

(1) + (0) - (0) + 6

7

1/4=0,因为我们在做整数运算。

其他回答

与许多类c语言一样,它是余数运算或模运算。有关数字类型(int, float, long, complex)请参阅文档。

在大多数语言中%表示模数。Python也不例外。

请注意

(3 +2 + 1 - 5) + (4 % 2) - (1/4) + 6

即使使用括号,在Python 3.4中计算的结果也是6.75,而不是7。


'/'操作符也不是那么容易理解(python2.7): try…

- 1/4

1 - 1/4

这有点离题,但在计算上面的表达式时应该考虑:)

此外,还有一个有用的内置函数divmod:

divmod (a, b) 取两个(非复数)数字作为参数并返回一对数字 由它们的商和组成 使用长除法时的余数。

%(取模)操作符产生第一个参数除以第二个参数的余数。数值参数首先转换为公共类型。

3 + 2 + 1-5 + 4% 2-1/4 + 6 = 7

这基于运算符优先级。