在Python中,除法有两种:/和//。
X / Y
对于Python2.X来说,如果两个操作数都是整数,那么结果将向下取整(这个和C里面的不同,C里面是向0取整),也就是说,如果结果本来是-2.5,那么向下取整为-3,如果结果本来是2.5,那么向下取整为2;如果两个操作数有浮点数,那么就是浮点数除法,结果就是浮点数除法;对于Python3.X来说,不管操作数有没有浮点数,都是浮点数除法:
/-2 #2.X商:-3余数:-1 #3.X商:-2.5余数:-1 #C商:-2余数:1 5.0/-2 #2.X商:-2.5余数:-1.0 #3.X商:-2.5余数:-1.0 #C商:-2.5余数:C中的%取余运算符不支持浮点数类型
上面比较有意思的是对于%取余运算,在Python中,和C语法不同的是,取余运算符支持浮点数运算,并且如果操作数有浮点数,那么返回的结果类型也是浮点型。
X // Y
//运算对于Python2.X和Python3.X来说,效果是一样的,无论操作数都是整数,还是包括浮点数,//都会向下取整,当然对于有浮点数的计算,结果仍会以浮点数形式返回,比如-5.0 // 2,结果是-3.0:
-5//2 #2.X商:-3余数:1 #3.X商:-3余数:1 #C商:-2余数:-1 -5.0//2 #2.X商:-3.0余数:1.0 #3.X商:-3.0余数:1.0 #C商:-2.5余数:C的取余运算不支持浮点数原文来自:https://www.py.cn
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容