一.負數的取余
我們先來看看幾個負數取余的例子:
>>> -76%9 5
在76是正數的情況下,這個結果應該是4,因為8*9=72,余數是4,而在負數的情況下是5
>>> -90%8 6
在90是正數的情況下,這個結果應該是2,余數為4,而在負數的情況下是4,我們再來看看被除數小於除數的例子:
>>> -5%7 2
在5是正數的情況下,余數應該是5.
根據以上三個例子,我們應該看出點東西了,那就是在Python當中,如果取余的數不能夠整除,那么負數取余后的結果和相同正數取余后的結果相加等於除數。
比如第一個-76%9的例子,負數取余后等於5,而正數取余后等於4,4+5正好等於我們的除數:9。后面的幾個例子也符合這一個規律,這個規律很有可能在考試當中出現並考察到。
二.負數的地板除
在Python當中的地板除是向下取整的,這個規律對負數也是適用的,首先我們來看看正數的地板除:
>>> 8//3 2
因為算出來等於2.666,因此向下取整之后的結果則為2,但如果前面的數字變成了-8呢?
>>> -8//3 -3
這樣子算出來如果不用地板除就是-2.666,但是地板除又是向下取整,負數向下取整之后數字也會變得更下,因此會變成-3.
這就是負數的地板除和取余的普遍規律了!