I';我乘以0却得不到0!!!!python
闲置:I';我乘以0却得不到0!!!!python,python,python-3.x,Python,Python 3.x,闲置: 谁能解释一下这里发生了什么事 操作顺序。乘法和除法从左到右;它不是先除法,然后乘法。所以你的表达式展开如下: >>> n = 4 >>> m = 1 >>> n//2*m//2 1 >>> n//2 2 >>> m//2 0 如果您想取n//2并将其乘以m//2,则必须用括号括起来: n//2*m//2 = ((n//2)*m)//2 = ((4//2)*1)//2= (2*1)//2 = 2//
谁能解释一下这里发生了什么事 操作顺序。乘法和除法从左到右;它不是先除法,然后乘法。所以你的表达式展开如下:
>>> n = 4
>>> m = 1
>>> n//2*m//2
1
>>> n//2
2
>>> m//2
0
如果您想取n//2
并将其乘以m//2
,则必须用括号括起来:
n//2*m//2 = ((n//2)*m)//2 = ((4//2)*1)//2= (2*1)//2 = 2//2 = 1
在python中,乘法和除法具有相同的权重,因此从左到右计算。因此,Python就是这样读取等式的:
>>> n=4
>>> m=1
>>> (n//2)*(m//2)
#=> 0
乘法和除法具有相同的优先级:
2*m//2
?double//是地板除法。4//2等于4/2,因为它是无休止的除法。1//2不等于1/2,见下面我的答案这不是我相信的问题,见下面我的答案完美的谢谢。模也被当作除法运算吗?是的。Python遵循通常的中缀运算代数顺序,模与乘法和除法运算符的优先级相同。看见
((4//2)*1)//2) = ((2)*1)//2) = ((2)//2) = 1