嵌套列表的交集
使用集合运算或列表推导式可以直接确定两个平面列表的交集。但是,在处理嵌套列表时会出现挑战。
解决方案:
要查找嵌套列表的交集(其中两个列表都包含子列表),您可以利用交集集合数据结构的方法。通过利用此方法,您可以提取两个列表之间的公共元素,同时忽略嵌套结构。
下面是演示此方法的示例:
c1 = [1, 6, 7, 10, 13, 28, 32, 41, 58, 63] c2 = [[13, 17, 18, 21, 32], [7, 11, 13, 14, 28], [1, 5, 6, 8, 15, 16]] # Create a set from the flat list s1 = set(c1) # Create a set of sets from the nested list s2 = {set(x) for x in c2} # Find the intersection of the sets c3 = [list(s1.intersection(x)) for x in s2]
在此示例中,结果 c3将包含嵌套列表 c1 和 `c2' 的交集:
c3 = [[13, 32], [7, 13, 28], [1, 6]]
以上是如何在Python中查找嵌套列表的交集?的详细内容。更多信息请关注PHP中文网其他相关文章!