gpt4 book ai didi

python - 如何计算列表中唯一列表的数量?

转载 作者:行者123 更新时间:2023-12-05 08:34:32 24 4
gpt4 key购买 nike

我试过使用 Counter 和 itertools,但由于列表不可用,所以它们不起作用。

我的数据如下所示:[ [1,2,3], [2,3,4], [1,2,3] ]

我想知道列表 [1,2,3] 出现了两次,但我不知道该怎么做。我正在考虑将每个列表转换为一个元组,然后对其进行哈希处理。有没有更好的办法?

最佳答案

>>> from collections import Counter
>>> li=[ [1,2,3], [2,3,4], [1,2,3] ]
>>> Counter(str(e) for e in li)
Counter({'[1, 2, 3]': 2, '[2, 3, 4]': 1})

只要每个子列表中没有嵌套可变变量(例如 [ [1,2,3], [2,3,4,[11,12]],您声明的方法也适用[1,2,3] ]:

>>> Counter(tuple(e) for e in li)
Counter({(1, 2, 3): 2, (2, 3, 4): 1})

如果您确实在子列表列表中嵌套了其他不可用的类型,请使用 strrepr 方法,因为它也处理所有子列表。或者递归地将所有内容转换为元组(更多工作)。

关于python - 如何计算列表中唯一列表的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25255215/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com