Python - 矩阵中最常见的组合
pythonserver side programmingprogramming更新于 2025/10/29 7:40:17
当需要找到矩阵中最常见的组合时,可以使用简单的迭代以及‘sort’方法和‘Counter’方法。
示例
下面是相同的演示
from collections import Counter
from itertools import combinations
my_list = [[31, 25, 77, 82], [96, 15, 23, 32]]
print("列表为:")
print(my_list)
my_result = Counter()
for elem in my_list:
if len(elem) < 2:
continue
elem.sort()
for size in range(2, len(elem) + 1):
for comb in combinations(elem, size):
my_result[comb] += 1
my_result = [elem for elem, my_count in my_result.items() if my_count ==
my_result.most_common(1)[0][1]]
print("结果为:")
print(my_result)
输出
列表为: [[31, 25, 77, 82], [96, 15, 23, 32]] 结果为: [(15, 23, 32, 96), (25, 31), (25, 82), (15, 32), (23, 32), (15, 32, 96), (25, 31, 82), (15, 23), (25, 77), (15, 23, 32), (25, 77, 82), (32, 96), (31, 77, 82), (15, 96), (31, 77), (23, 96), (25, 31, 77, 82), (31, 82), (77, 82), (23, 32, 96), (15, 23, 96), (25, 31, 77)]
解释
将所需的包导入环境。
定义列表列表并显示在控制台上。
将计数器分配给变量。
迭代列表。
设置条件以检查元素的长度是否小于 2。
如果是,则继续执行。
否则,使用‘sort’方法对列表中的元素进行排序。
再次迭代列表,并返回‘combinations’方法用于将特定索引处的元素增加 1。
接下来,使用列表推导式检查计数是否相同。
这被分配给一个变量。
它作为输出显示在控制台上。
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

