1 回答

TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超6個(gè)贊
這可以通過以下方法實(shí)現(xiàn)lists,以sets作出類似的操作symmetric_difference(),并intersection()為您non_matching_list和matching_list分別。
這是其中一種解決方案:
matching_list, non_matching_list = [], []
for lists1, lists2 in zip(sample_dict[0].values(), sample_dict[1].values()):
for l1, l2 in zip(lists1, lists2):
matching_list.append(list(set(l1) & set(l2)))
non_matching_list.append(list(set(l1).symmetric_difference(set(l2))))
請注意, usingset(l1) & set(l2)與 相同set(l1).intersection(set(l2)),所以這里基本上是一個(gè)交集操作。
我還使用內(nèi)置zip()函數(shù)來聚合每個(gè)可迭代對象(兩個(gè)列表)中的元素。
添加回答
舉報(bào)