首页 > 解决方案 > Python - 无法删除列表项

问题描述

我必须删除特定的给定元素。list1=[0,1,2,2,3,0,4,2]我用过remove_element=2

def fun(list1,remove_element):
   if len(list1)==0:
       return 0
   for i in range(len(list1)):
       if remove_element==list1[i]:
           list1.remove(remove_element)
   return list1

这是我得到的错误:

Traceback (most recent call last):
  File "<pyshell#205>", line 1, in <module>
   print(fun(list1,remove_element))
   File "<pyshell#204>", line 5, in fun
        if remove_element==list1[i]:
    IndexError: list index out of range

标签: pythonlistindexingrange

解决方案


另一个更短的解决方案是

def fun(list1,remove_element):
    while remove_element in list1:
        list1.remove(remove_element)
    return list1

推荐阅读