以下是一个示例代码,演示如何在保留重复项的情况下从两个列表中相减:
def subtract_lists(list1, list2):
# 创建一个新的列表,用于存储结果
result = list1.copy()
# 遍历第二个列表
for item in list2:
# 如果item在结果列表中,则移除该项
if item in result:
result.remove(item)
# 返回结果列表
return result
# 示例用法
list1 = [1, 2, 2, 3, 4, 5]
list2 = [2, 4, 5]
result = subtract_lists(list1, list2)
print(result)
输出结果为:[1, 2, 3]
在上述代码中,我们首先创建一个新的列表 result
,用于存储结果。然后,我们遍历第二个列表 list2
,检查每个元素是否存在于 result
中。如果存在,则从 result
中移除该元素。最后,我们返回 result
列表作为结果。
在这个示例中,list1
是第一个列表,list2
是第二个列表。我们从 list1
中减去 list2
,并且保留重复项。最终的结果存储在 result
列表中,并打印输出。
上一篇:保留重复项的两个列表的共同元素
下一篇:保留重复值 - 向量 C++