给定列表:
a = [["b", "a", 3], ["a", "b", 4], ["y", "a", 2], ["b", "a", "b"]]
我想在索引[1]处生成一个2D唯一元素列表及其数量。执行清单a会产生:
[["a", 3], ["b", 1]]
我已经编写了这段代码:
[(item[1], sum(x[1].count(item[1]) for x in a)) for item in a]
...但是,它会产生以下列表:
[('a', 3), ('b', 1), ('a', 3), ('a', 3)]
如果可能的话,我很乐意使用一根衬纸解决它:)
您可以从您的代码中获得一个集合,该集合将仅提供唯一的条目
a = [["b", "a", 3], ["a", "b", 4], ["y", "a", 2], ["b", "a", "b"]]
set([(item[1], sum(x[1].count(item[1]) for x in a)) for item in a])
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句