参考:python负数求余不正确?——取模 VS 取余 - 偷天神猫的文章 - 知乎
# java的整除与求余
7/4 = 1
-7/4 = -1
7/-4 = -1
-7/-4 = 1
7%4 = 3
-7%4 = -3
7%-4 = 3
-7%-4 = -3
# python3下的整除与求余
7//4 = 1
-7//4 = -2
7//-4 = -2
-7//-4 = 1
7%4 = 3
-7%4 = 1
7%-4 = -1
-7%-4 = -3
在C/C++, C#, JAVA, PHP这几门主流语言中,%运算符都是做取余运算,而在python中的%是做取模运算。
总结规律,python中:除数为负,余数也为负;除数为正,余数也为正
所以若用python求 -1 ÷ 10
,就不能得-1 ÷ 10 = 0 余 -1
了,因为余数需要为正,只能是-1 ÷ 10 = -1 余 9
。