Python 3输出奇怪的算术结果
发布时间:2020-12-20 12:41:25 所属栏目:Python 来源:网络整理
导读:我正在用 Python编写计算器,并正在处理求幂.在处理小数的指数时,我遇到了一些非常奇怪的东西,所以我尝试在控制台中重现问题.这就是我得到的: Python 3.5.2 (default,Oct 11 2016,04:59:56) [GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.38)] on da
我正在用
Python编写计算器,并正在处理求幂.在处理小数的指数时,我遇到了一些非常奇怪的东西,所以我尝试在控制台中重现问题.这就是我得到的:
Python 3.5.2 (default,Oct 11 2016,04:59:56) [GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.38)] on darwin Type "help","copyright","credits" or "license" for more information. >>> num1 = -3.0 >>> num2 = 2.5 >>> opr = '^' >>> if opr == '^': ... print(num1**num2) ... (4.772588574262081e-15+15.588457268119896j) >>> -3.0**2.5 -15.588457268119896 有关如何避免第一个输出并获得第二个输出的任何指针?我不完全确定第一个输出甚至代表什么. 解决方法
第一个输出正确.这是一个复数,因为你有一个负数的十进制幂.
你无法重现它,因为在最后一行你应该写(-3.0)** 2.5.您所写的内容相当于 – (3.0 ** 2.5),因为取幂的优先级高于一元运算符 – . (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |