Python中的取模运算⽅法
所谓取模运算,就是计算两个数相除之后的余数,符号是%。如a % b就是计算a除以b的余数。⽤数学语⾔来描述,就是如果存在整数n和m,其中0 <= m < b,使得a = n * b + m,那么a % b = a - n * b = m.
取模运算的两个操作数都必须是整数,可以是负整数,但是b不可以是0,因为被除数不能为0嘛。
当a和b中存在负整数时,⾸先计算|a|%|b|=c,然后a%b的符号与b⼀致。也就是说,如果b>0,则a%b=c;如果b<0,则
a%b=-c
⽐如:
好了,上⾯是以前我对取模运算的认识,我记得<<C++ Primer>>上也是这么写的。但是,在Python中,我随便输⼊了⼀个浮点数进⾏取模运算,竟然也是可以的,惊呆了==
不过呢,仔细观察就会发现,不知道它是怎么计算的啊!怎么办呢,我们⾸先来看看,浮点数的取模在数学上要怎么定义呢?
浮点数取模的数学定义:对于两个浮点数a和b,a % b = a - n * b,其中n为不超过a / b的最⼤整数。
例如,
3.5 / 2 = 1.75,取n = 1,则3.5 % 2 = 3.5 - 1 * 2 = 1.5
-3.5 / 2 = -1.75,取n = -2,则-3.5 % 2 = -3.5 - (-2) * 2 = 0.5
3.5 / -2.5 = -1.4,取n = -2,则3.5 % -2.5 = 3.5 - (-2) * (-2.5) = -1.5
另外,C++中有⼀个函数fmod可以⽤来计算浮点数的取模。
总结:
取模运算的两个操作数a和b可以是整数,也可以是浮点数;可以是正数,零(b不能为0),也可以是负数。不管是整数还是浮点数,是正数还是负数还是零,只需要抓住取模的数学定义即可。统⼀的数学定义如下:
对于两个数a和b(b不为0),a % b = a - n * b,其中n为不超过a / b的最⼤整数(这⾥的除就是正常的除,不是整除)。
django怎么学
需要注意的是,整数的取模运算的定义和浮点数的是⼀样的,所以计算⽅法也是⼀样的。最前⾯提供的整数取模的⽅法,其实本质上跟浮点数取模的⽅法是⼀致的,只不过这种⽅法可能在含有负整数的整数取模中⽐较⽅便⽽已。
以上这篇Python中的取模运算⽅法就是⼩编分享给⼤家的全部内容了,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。