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#模式下:

 

 

 

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

posted @ 2019-10-01 09:04  liu_sl2005  阅读(584)  评论(0)    收藏  举报