令狐少侠 发表于 2018-9-18 16:08:27

IndexError: list assignment index is out of range

请考虑以下代码:
i =
j = []
k = 0

for l in i:
    j = l
    k += 1

print j
输出(Win 7 32位上的Python 2.6.6)是:
> Traceback (most recent call last):
>   j = l IndexError: list assignment index out of range
我不明白。有人知道如何清理它吗?

强人锁男 发表于 2018-9-18 16:09:14

j是一个空列表,但是那你尝试在第一次迭代中写入元素,该迭代尚不存在。
请尝试以下方法,将新元素添加到列表末尾:
for l in i:
    j.append(l)

蛋蛋超人 发表于 2018-9-18 16:11:33

你的另一个选择是初始化j:
j = *max(i)

天使与魔鬼 发表于 2018-9-18 16:12:03

做j.append(l)而不是j = l避免k。

I_Like_AI 发表于 2018-10-10 08:09:52

学到了
页: [1]
查看完整版本: IndexError: list assignment index is out of range