python-3.x - 如何查找内部列表中的最后一个值在python的嵌套列表中重复了多少次?
问题描述
我有一个清单:
a = [[0, 2, 5, 12], [1, 2, 3, 4, 8, 9], [2, 4, 12], [3, 8, 9], [4, 5, 7]]
我想得到2
因为a[0][-1] == a[2][-1], a[1][-1] == a[3][-1]
最后一个值中有两个重复。
我试图使用sum(1 for sublist in a if sublist[-1] == sublist[-1])
它失败了,我为此陷入了困境。
解决方案
您可以collections.Counter
用来计算最后一项的出现次数:
from collections import Counter
last = Counter([i[-1] for i in a])
# Counter({7: 1, 9: 2, 12: 2})
然后计算其中有多少大于1
:
sum(1 for k,v in last.items() if v>1)
# 2
推荐阅读
- azure - Azure 应用服务是否使用应用服务扩展 vscode 初始化 SSH?
- arrays - 过滤您的文本中包含来自其他单元格的值的范围
- swift - 如何在 SwiftUI 中从详细视图编辑列表视图
- python - Webscraping 返回变量而不是实际值
- javascript - 通过 onClick 在 React.js 中删除一个段落?
- flutter - 如何在颤动的文本字段中的前导图标和文本之间添加分隔符
- sql - 查询以获取 table1 中每一行的结果,其中包含满足 table2 中条件的 N 最大记录的子查询
- sql - 相同的where子句中的Between和Like
- swift - 是否可以在 Swift 的 if 条件中使用字符串变量?
- arrays - 减少值相等的数组