python中r*r和r**2的区别是什么?

想问一下各位,python中r*r和r**2,计算结果为什么会不同?(见下图)谢谢!

img

计算顺序的原因。不信你试试 3.14*(3*3)
第一个是3.14先乘以3,然后计算结果再乘以3,这之间要保存中间的计算结果,而且因为二进制的原因,浮点数产生了误差。
第二个是3先平方,得到9,然后3.14乘以9,正好可以被二进制完整表示。

一个*就是乘法,**是计算n次方。n ** 2 等价于 n * n ,n ** 3 等价于 n * n * n

有帮助的话,请点采纳该答案~