📅  最后修改于: 2023-12-03 15:07:14.638000             🧑  作者: Mango
为了更好的程序复用,我们提供了一个Python函数,可以删除列表中 x 之前出现的每个 y:
def remove_before(list1, x, y):
"""
删除列表中 x 之前出现的每个 y
Parameters:
list1 (List): 包含元素y和x的列表
x (Any): 用于查找的元素
y (Any): 要删除的元素
Returns:
List:删除后的列表
"""
for i in range(len(list1)):
if x == list1[i]:
break
elif list1[i] == y:
del list1[i]
i -= 1
return list1
我们来举个例子:
list1 = [1, 2, 3, 4, 5, 3, 6, 7, 3, 8, 9]
x = 6
y = 3
new_list = remove_before(list1, x, y)
print(new_list)
输出结果:
[1, 2, 3, 6, 7, 8, 9]
上述例子中,列表 list1 中包含 3 和 6 两个元素,x 为 6,y 为 3,通过函数 remove_before 删除列表中 x 之前出现的每个 y,输出结果为 [1, 2, 3, 6, 7, 8, 9]。
注意:该函数将会改变原有的列表内容,因此在使用前请慎重。