📜  删除列表中 x 之前出现的每个 y 的Python程序(1)

📅  最后修改于: 2023-12-03 15:07:14.638000             🧑  作者: Mango

Python程序:删除列表中 x 之前出现的每个 y

为了更好的程序复用,我们提供了一个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:需要删除元素的列表
  • x:查找的元素
  • y:要删除的元素
返回值说明
  • 返回删除 y 元素后的列表
使用方式

我们来举个例子:

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]。

注意:该函数将会改变原有的列表内容,因此在使用前请慎重。