Python3.7和C#取模运算比较
先说说C#里面的取整,
int i=3;
int j=8;
int k=i/j; //这个就是取整,3/8的取整我们知道等于0
而且无论i或者j任意一个为负数,都得到相同的结果0,诸位可以试试!

然后我们试下python(笔者使用的是python3.7.4版本)

可以发现,python的取整和C#是有区别,原因在于:pthon里面的取整模式:向下取整,因此当存在负数取整的时候,很可能远离0,从而 -3//8 和 3//-8 取整的结果都是-1了
其中可以发现:
1.C#取整单斜杠,python双斜杠,而双斜杠在C#里面就是注释的功能。两者语法还是差别蛮大的!
2.C#取整结果并非向下取整,而是真实的截取整数部分(类似结果有小数点,然后得到小数点前面的整数值),比如在C#里面3/8,取整就是0,而-10/8 结果是是-1
有了以上细微区别,我们再来讲解python和C#的取模运行
他们之间都有意义的算法拆分:在C#中a%b 可以分解为: a-((a/b)*b), 在python中a%b可以分解为:a-((a//b)*b)
因此结果可以让下显示:
python运行结果如下:

C#模式下:

两者运行结果还是有些差别!

浙公网安备 33010602011771号