巢狀清單的交集
使用集合運算或清單推導式可以直接決定兩個平面清單的交集。但是,在處理巢狀清單時會出現挑戰。
解決方案:
要尋找嵌套清單的交集(其中兩個清單都包含子清單),您可以利用交集集合資料結構的方法。透過利用此方法,您可以提取兩個清單之間的公共元素,同時忽略嵌套結構。
以下是示範此方法的範例:
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中文網其他相關文章!