基於公共元素將列表轉換成集合的 Python 程式


當需要基於特定公共元素將列表轉換為集合時,可以定義一個使用“enumerate”遍歷該集合並將特定條件應用於元素的方法。該方法使用“union”方法和“map”方法。

示例

以下是對其進行演示

def common_elem_set(my_set):
   for index, val in enumerate(my_set):
      for j, k in enumerate(my_set[index + 1:], index + 1):

         if val & k:
            my_set[index] = val.union(my_set.pop(j))
            return common_elem_set(my_set)
   return my_set

my_list = [[18, 14, 12, 19], [9, 6, 2, 1], [54, 32, 21, 17], [18, 11, 13, 12]]

print("The list is :")
print(my_list)

my_set = list(map(set, my_list))

my_result = common_elem_set(my_set)

print("The result is :")
print(my_result)

輸出

The list is :
[[18, 14, 12, 19], [9, 6, 2, 1], [54, 32, 21, 17], [18, 11, 13, 12]]
The result is :
[{11, 12, 13, 14, 18, 19}, {9, 2, 6, 1}, {32, 17, 21, 54}]

說明

  • 定義了一個名為“common_elem_set”的方法,該方法採用一個列表作為引數。

  • 使用 enumerate 遍歷列表。

  • 使用“&”設定一個條件,如果條件滿足,則返回輸出。

  • 在方法外部,定義了一個列表的列表。

  • 在控制檯上顯示它。

  • 使用“map”方法將其轉換為集合,然後再次轉換為列表。

  • 將其分配給變數。

  • 現在透過傳遞該變數來呼叫該方法。

  • 在控制檯上顯示輸出。

更新於: 2021-09-15

77 次瀏覽

開啟你的 職業生涯

完成課程獲得認證

開始學習
廣告