我在一台32位机器上使用32位版本的Python。你知道吗
当我尝试创建一个大数组时,当我的数组长度为5592406
时,会出现以下错误:
Traceback (most recent call last): File "/root/PycharmProjects/stackidiots/main.py", line 3, in <module> dd [x] = x IndexError: list assignment index out of range
这是Python的限制还是我的代码出了问题? 这是我的密码:
dd = []
for x in range(5592406):
dd [x] = x
那么如何解决这个问题呢?如果我换成64位,它会变大吗?你知道吗
您的问题的最短解决方案是:
这适用于python2和python3。你知道吗
错误消息:
告诉你你试图分配给一个不存在的索引。 这与32位或64位版本的Python无关。你知道吗
不,这不是Python能力的限制。你知道吗
相反,您在代码中犯了一个错误。你知道吗
你会注意到你的错误是:
注意列表赋值工件。您正在尝试将x分配给列表中尚不存在的索引。当你做
dd [x] = x
。你知道吗相反,只需将x附加到带有^{} 的列表中
虽然这是可行的,但是它很麻烦,而且可以更容易地用list comprehension在一行中完成。你知道吗
相关问题 更多 >
编程相关推荐