删除Python列表中的所有元素实例
时间:2020-02-23 14:43:44 来源:igfitidea点击:
在本文中,我们将看到不同的方法来从Python列表中删除给定元素的所有出现或者实例。
让我们看看这个例子:示例:
Input : ["java", "Python", "R", "Scala", "java"] element: "java" Output : ["Python", "R", "Scala"] Input : ["java", "c", "ruby", "java", "java","java script"] element: "java" Output : ["c", "ruby", "java script"]
现在,让我们看看不同的方法:
使用remove()列表的方法与循环
remove()
方法用于从列表中删除给定元素的第1个发生。
所以我们在这里循环通过列表,每当我们找到给定元素时,我们将使用remove()方法从列表中删除该元素。
这是Python代码:
# input list items = ["java", "Python", "R", "Scala", "java"] # input element element = "java" # loop through all element for item in items : # if element is found # then remove if item == element: items.remove(item) # print result print(items)
输出:
['Python', 'R', 'Scala']
使用pop()列表方法
pop()
方法用于从列表中删除给定索引元素的第1次出现。
所以其中我们正在循环通过列表,每当我们找到给定的元素时,我们将通过传递相应的索引来使用pop()方法从列表中删除该元素。
这是Python代码:
# input list items = ["java", "Python", "R", "Scala", "java"] # input element element = "java" # loop through all element for i in range(len(items)) : # if element is found # then pop out if items[i] == element: items.pop(i) # print result print(items)
输出:
['Python', 'R', 'Scala']
使用list-comprehension
其中我们通过添加与给定元素不匹配的元素来创建新列表 list-comprehension
。
这是建议使用的解决方案,在这里我们正在创建一个满足某些条件的子符。
在这种情况下,如果 item
与给定的不匹配 element
这是Python代码:
# input list items = ["java", "Python", "R", "Scala", "java"] # input element element = "java" # list comprehension items = [item for item in items if item != element] # print result print(items)
输出:
['Python', 'R', 'Scala']
使用filter()
我们也可以使用内置 filter(function,iterable)
可以从函数返回true的列表元素中返回迭代器的方法。
这是Python代码:
# input list items = ["java", "Python", "R", "Scala", "java"] # input element element = "java" # list comprehension items = list(filter(lambda item: item != element, items)) # print result print(items)
使用list的remove()方法与循环
我们也可以使用 remove()
循环的方法而不是循环,如第一次方法所示。
我们将在循环中使用循环以及查找列表中的元素时迭代元素,我们将删除它。
这是Python代码:
# input list items = ["java", "Python", "R", "Scala", "java"] # input element element = "java" # while loop through all element while element in items: items.remove(element) # print result print(items)
输出:
['Python', 'R', 'Scala']