Skip to main content
 首页 » 编程设计

python之如何不在列表中插入相同的值组合

2025年05月04日20mate10pro

我目前有一个包含不同概率的 6x3 矩阵。

在这种情况下,我的行有 3 个值,对应于我的样本最终属于某个类别的概率。

我想要做的是为我的 6 个样本获取 3 个不同类中的每一个。 我担心我最终可能会重复。

我注意到 lista 中的每个元素都包含 6 个值。有没有一种简单的方法可以让我摆脱可能的重复项?

for combination in itertools.product(*probability): 
    q1 = np.prod((combination)) 
    lista.append(q1) 
    print(combination) 
    i = i+1 
print(i) 
print(np.sum(lista)) 

提前致谢!

请您参考如下方法:

使用set(lista) 将删除任何重复值

例子:

lista = [1,2,3,4,1,2] 
new_list = set(lista) 
print(new_list) 

输出:

{1, 2, 3, 4} 

编辑:根据您的评论,使用 itertools 和 groupby() 删除列表中的重复列表;

import itertools 
 
lista = [[1,2,3], [1,2,3], [3,4,5]] 
new_list = list(k for k,_ in itertools.groupby(lista)) 
print(new_list) 

输出:

[[1, 2, 3], [3, 4, 5]]