列表索引超出范围,不确定为什么?

时间:2015-12-06 10:40:30

标签: python list python-3.x

我使用此代码获得了“列表索引超出范围”,但是当我将new_list初始化为空列表时,我没有。有人可以解释一下原因吗? 此函数采用数字列表并“删除”重复项。

def remove_duplicates(numbers):
    new_list = [numbers[0]]
    for x in numbers:
        if x not in new_list:
            new_list.append(x)
    return new_list

2 个答案:

答案 0 :(得分:1)

这确实是一个XY问题。如果要从列表中删除重复项,只需将其转换为集合:

gem update --system 2.3.0

答案 1 :(得分:0)

当数字/可能是空列表时,您无法获得numbers[0]。 更好的解决方案是使用numbers[0] if len(numbers) or None