不能使用del LIST [index] - Python 3.4.2

时间:2015-01-21 09:16:49

标签: python list python-3.x

我有这个简单的代码

all_rooms有20多个元素

del all_rooms[0]
del all_rooms[1]
for everyRoom in all_rooms:
    print(everyRoom)

我收到此错误

del all_rooms[0]
IndexError: list assignment index out of range

我只想从列表中删除01 st索引。

我看到here on SO

的回答

如果我发表评论del语句

,我可以轻松打印我的列表元素

2 个答案:

答案 0 :(得分:1)

尝试使用:

for everyRoom in all_rooms[2:]:
    print(everyRoom)

这称为列表切片,您可以在其中给出起始位置和结束位置,保留结束位置blank我们可以说python会自动将len(list)作为结束位置,因此使用{{ 1}}也会产生相同的结果。

答案 1 :(得分:0)

而不是使用del - 使用切片并将all_rooms的内容替换为第3个元素。

all_rooms[:] = all_rooms[2:]