您还可以根据真假条件过滤结果:
L = [{'G'}, {'D'}, {'B','C'}]
word='C'
print([True if list(filter(lambda x:word in x,L)) else False])
输出:
[True]
根据评论更新:
你可以试试这个:
def union_similar(list_data,values_data):
checker = {}
final_ = []
for item in list_data:
for values in values_data:
if values in item:
if values not in checker:
checker[values] = [item]
else:
checker[values].append(item)
sub_ = set()
for check, no in checker.items():
if len(no) > 1:
for i in no:
sub_.update(*i)
list_data.remove(i)
else:
sub_.update(*no[0])
list_data.remove(no[0])
list_data.append(sub_)
return list_data
print(union_similar(L,c))
输出:
测试用例 1:
L = [{'G'}, {'D'}, {'B','C'}]
c=['C','G']
输出:
[{'D'}, {'B', 'C', 'G'}]
Test_case_2:
L = [{'G'}, {'D'}, {'B','C'},{'U','C'}]
c=['C','G']
输出:
[{'D'}, {'U', 'B', 'G', 'C'}]