[英]count number of occurrences in list by dict with key and value
使用字典,我试图找出键是否与值一样多次(或更多)出现。 因此,例如,我有一个看起来像这样的字典:
expected = { "blue": 2, "red": 1 }
和一个看起来像这样的列表:
results = [ 'green', 'blue', 'blue', 'red' ]
我需要查看蓝色是否出现 2 次或更多次,红色是否出现 1 次或更多次。 go 关于这个的最佳方法是什么? 我努力了:
for k, v in expected.items():
if results.count(k) >= v:
// return
但这将匹配任一键,而不是严格检查整个列表。
你需要它们都至少一样大。 这意味着您必须先完成循环才能返回成功。 任何失败都意味着您可以立即返回。
for k, v in expected.items():
if results.count(k) < v:
return False
return True
或者,使用all
function 将其放入一行:
return all(results.count(k) >= v for k, v in expected.items() )
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.