python出现问题及解决方法,python中遇到的问题
最近在编码的过程中,在除法和余数的过程中,遇到了一个有点狂热的问题。让我们把这些问题编码在这里,为将来做准备。
在Python3中,有两种划分方式:“/”和“//”。这两者之间有明显的区别。具体区别是看代码:
这两行代码print(12/10) print(12/10)的输出如下所示。
11.2这一结果的差异显而易见。如果股息为负,将会发生以下情况:
print(-12/10)print(int)-12/10)(print)-13//10)三个语句的输出如下:
-1.2-1-2其中-13除以“//”除以10,结果是-2。因此,“//”将向下舍入,“-1.3”将变成-2。如果想得到-1,必须用“/”强制将结果转换为int。
取余数的运算比除法运算更复杂。
取一个正数直接比较:
在结果为3的地方打印(123)。
但是,如果你换成负数取余数,情况就不一样了:
Print(-123) print )-123%-10 )7-3第二个是我们一般的剩余运算。这里,当负数剩余时,请使用上面的解决方案。
那么,让我们来看看第一个。结果是7。这个结果有点混乱,但是和Python的基本机制有关。
在Python中,余数的公式和其他语言一样。r=a-n*[a//n]
这里r是余数,a是被除数,n是除数。
但在“a//n”这一步,如果A为负,如上所述,就会向下调整。也就是说,整体是一个负的无限方向。这也是可用的:
-123=-123-10*(-123//10 )=-123-10*(-13 )=7
这里必须提到的是
打印(123%-10%)在这种情况下,结果如下:
-7这也可以从公式中清楚地计算出来。
每种情况的摘要如下所示。
打印(12//-10)打印(12/10)打印(-12/10)打印(12//-10)打印(int)-12/10)打印(123)打印(-123
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。