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

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


当前回答

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

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

这基于运算符优先级。

其他回答

有点偏离主题,%也用于字符串格式化操作,如%=,将值替换为字符串:

>>> x = 'abc_%(key)s_'
>>> x %= {'key':'value'}
>>> x 
'abc_value_'

同样,跑题了,但它似乎是一个小小的文档特性,我花了一段时间才找到,我认为它与python模数计算有关,这个SO页面在这方面排名很高。

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

模运算符也可以用于打印字符串(就像在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')

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

我发现掌握模运算符(%)最简单的方法是通过长除法。它是余数,在确定一个数是偶数还是奇数时很有用:

4%2 = 0

  2
2|4
 -4
  0


11%3 = 2

  3
3|11
 -9
  2

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