【发布时间】:2018-02-08 01:33:40
【问题描述】:
var = 2 ** 2 ** 2 ** 2 ** 2 ** 2
我在 Python 2.7.12 和 Python 3.5.2 中尝试了这个操作。
不要做任何评判。这样做,并告诉我为什么我的笔记本联想ideapad310(i5-6k 系列,8 GB RAM)和我在 Python 中执行相同操作的任何其他计算机都崩溃了(停止回答/控制台不返回)。
OBS.:如您所见,英语不是我的第一语言。
【问题讨论】:
-
你能详细描述一下你所说的“吓坏了”是什么意思吗?你使用哪个python版本,在哪个系统上,错误信息是什么?
-
2 ** (2 ** (2 ** (2 ** (2 ** 2))))是一个巨大的数字:2 ** (2 ** 65536),或者换句话说powers are right associative。 -
如果你被要求将 2 提高到 2 万位数字的幂,你不会吓坏吗?
-
问题本身并不清楚。没有说明 OP 得到了什么结果,没有说明 OP 预期的结果。
-
@Faggiano 您可以通过不要求您的 PC 计算一个大的数字(远大于宇宙中的原子数)来“防止此类问题”。也许你想要的是
(((((2**2)**2)**2)**2)**2),它非常快,但也完全不同。