基于公共元素将列表转换成集合的 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 次浏览

开启你的 职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.