x = 3
y = 5
z = 2
r = (x ^ 2 + y) / z
print(r) //2.0
看到输出是2;原因是因为 ^ 这个符号不是你所谓的2次方,在python以及很多计算机语言中他是一个代表按位异或。这个符号会把左右两个数字先进行到二进制的转换,然后再进行运算,运算方式为:同一位上不同时为1,相同时为0,得到的结果再转成十进制进行返回。
希望我的答案能帮到您
就是7而且是7.0,如果是减号也不会是2,是2.0
^在python运算中,表示异或,不是幂运算, 平方用** : x**2 = 9
3^2 转二进制后: 11 ^ 10 = 01
另python是大小敏感的,题目前面大写,表达式又小写,题目不严谨
还有(x^2+y)/z结果是浮点数 2.0 要用整除 // 才返回 2
^表示异或,本例运算次序要注意,+的运算等级在^之上,先计算2+y=7,再计算x^7=3^7=011^111=100=4,最后计算4/z=4/2=2.0,答案应该是2.0