以下是一个示例代码,用于比较两个列表并返回差异的新列表:
def compare_lists(list1, list2):
diff_list = []
for i in list1:
if i in list2:
continue
else:
diff_list.append(i)
return diff_list
def compare_lists_with_wildcard(list1, list2):
diff_list = []
for i in list1:
if i == '*':
continue
elif i in list2:
continue
else:
diff_list.append(i)
return diff_list
# 示例用法
list1 = ['apple', 'banana', 'cherry', 'date']
list2 = ['apple', 'banana', 'date']
# 比较两个列表并返回差异的新列表
diff = compare_lists(list1, list2)
print(diff) # 输出:['cherry']
# 比较两个列表(带有通配符'*')并返回差异的新列表
list1_with_wildcard = ['apple', '*', 'cherry', 'date']
diff_with_wildcard = compare_lists_with_wildcard(list1_with_wildcard, list2)
print(diff_with_wildcard) # 输出:['cherry']
在上述示例中,compare_lists
函数用于比较两个列表,并返回在list1
中但不在list2
中的元素。compare_lists_with_wildcard
函数在此基础上添加了对通配符的处理,即忽略通配符和在list2
中存在的元素。