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

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


当前回答

%是模。3% 2 = 1,4% 2 = 0

/是除法(在本例中为整数),因此:

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

其他回答

The % (modulo) operator yields the remainder from the division of the first argument by the second. The numeric arguments are first converted to a common type. A zero right argument raises the ZeroDivisionError exception. The arguments may be floating point numbers, e.g., 3.14%0.7 equals 0.34 (since 3.14 equals 4*0.7 + 0.34.) The modulo operator always yields a result with the same sign as its second operand (or zero); the absolute value of the result is strictly smaller than the absolute value of the second operand [2].

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

示例1: 6%2的结果为0,因为如果6除以2,没有余数(3倍)。

例2:7%2的结果是1,因为当7除以2(3次)时,余数是1。

总结一下,它返回除法运算的余数,如果没有余数,则返回0。6%2意味着6的余数除以2。

它是一个模运算,除了它是一个老式的c风格字符串格式化操作符,而不是一个模运算符。详情请看这里。您将在现有代码中看到很多这样的代码。

X % y计算除法X除以y的余数,其中商为整数。余数是y的符号。


在Python 3上,计算结果为6.75;这是因为/做的是真除法,而不是像Python 2中那样(默认情况下)的整数除法。在Python 2上,1 / 4给出0,因为结果是四舍五入。

整数除法也可以在python3上执行,使用//操作符,因此要得到7,你可以执行:

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

此外,在python2中,只需添加该行,就可以获得Python样式划分

from __future__ import division

作为每个源文件中的第一行源代码。

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

模运算符也可以用于打印字符串(就像在C中一样),定义在谷歌https://developers.google.com/edu/python/strings上。

      # % operator
  text = "%d little pigs come out or I'll %s and %s and %s" % (3, 'huff', 'puff', 'blow down')

这似乎有点离题,但它肯定会帮助到某人。