课后习题
print(2 ** 2 ** 32) 和 print( (2 ** 2) ** 32) 这两个东西的区别在哪里呀{:10_266:} 孩子数学太差了,真的看不出区别 区别就是前边的式子先算后两个后面的式子先算前两个 wp231957 发表于 2022-9-24 15:23
区别就是前边的式子先算后两个
后面的式子先算前两个
为啥前边的会先算后两个 2 ** 2 ** 32 = 2 ** 4294967296 = <死机也算不出来>
(2 ** 2) ** 32 = 4 ** 32 = 18446744073709551616
看图,就知道差距在哪了:
**代表幂运算,2**2**32 会优先算后面的 2**32,另外括号的优先级最高,所以算的结果是有差别的,希望对你有帮助 lymbwx 发表于 2022-9-24 20:25
**代表幂运算,2**2**32 会优先算后面的 2**32,另外括号的优先级最高,所以算的结果是有差别的,希望对你 ...
好的谢谢,理解啦! **表示幂,幂会先计算次方数字,如A ** B ** (C+D),则等于A的B ** (C+D)次方
而(2 ** 2) ** 32则会按照优先次序,先计算括号里的内容,则等于(2 ** 2)的32次方计算
页:
[1]