当前位置: 首页 > 面试题库 >

Python 2.7对具有给定值的字典项进行计数

缑修齐
2023-03-14
问题内容

这里的第一个问题,所以我将正确解决:

使用python 2.7

我有一个项目字典,键是一个表示为元组(x,y)的x,y坐标,所有值都是布尔值。

我试图找出让多少项目有一个给定的值数的快速和清洁方法。我并不需要知道哪些键具有给定值,究竟有多少。

我首先想到的是迭代的项目,测试每一个同时保持每个真实价值或什么的计数。我只是在想,因为我还是python新手,也不知道所有的库,是否有更好/更快/更简单的方法可以做到这一点。

提前致谢。


问题答案:

第一部分主要是为了好玩 - 我可能不会在我的代码中使用它。

sum(d.values())

将得到的数量True值。(当然,你可以得到的数量False值的len(d) - sum(d.values()))。

稍微一般,你可以这样做:

sum(1 for x in d.values() if some_condition(x))

在这种情况下,if x可以代替if some_condition(x)大多数人在现实世界中的代码中使用的东西就可以了)

在我发布的三种解决方案中,以上是最惯用的,也是我建议的一种

最后,我想这可能是更巧妙地写了一个小:

sum( x == chosen_value for x in d.values() )

这是同样作为我的第(有趣)的解决方案,因为它依赖于事实True + True == 2。聪明的并不总是更好。我想大多数人都会认为这个版本是一个小比上面的(因此更差)的一个比较模糊的。



 类似资料:
  • rank ▲ ✰ vote url 11 867 379 1107 url 用字典的值对字典进行排序 我有个字典,字典的值来自于数据库:一个是字符串,一个是数字.字符串是唯一的,所以键就是字符串. 我可以用键来排序,但是怎么用值来排序呢? 注:我已经看过另一个问题怎样对列表中的字典的键值对字典进行排序?,或许这种方法可以,但是我确实只需要一个字典,我想看看还有其他更好的方法. 对字典进行排序是不可

  • 问题内容: 说我有一个像这样的数组: 如何计算具有给定值的数字(在示例中为空白)? 而且有效吗?(大约十二个数组,每个数组包含数百个元素)此示例超时(超过30秒): 在这种情况下,空白元素的数量为3。 问题答案: 如何使用array_count _values来获得一个为您计算一切的数组?

  • 以上是我通过json得到的,我需要将值分配给UITableView: 它返回0行,我是ios新手请帮助我如何将这些值分配给uitableview。 当做

  • 问题内容: 我有一个字典列表,希望每个项目都按特定的属性值排序。 考虑下面的数组, 当排序name,应该成为 问题答案: 使用密钥而不是cmp看起来更干净: 或如JFSebastian和其他人所建议的, 为了完整性(如fitzgeraldsteele的评论中指出的那样),请添加reverse=True降序排列

  • 我想根据性别将Person对象与收集器分组。toMap()函数如下所述,但这并不像我预期的那样工作。 错误提示 不兼容类型:推理变量U具有不兼容的边界相等约束:列出下界:Person,T#2,T#1,其中U,T#1,K,T#2是类型变量:U扩展方法中声明的对象 的类型 有人能解释这个错误吗?

  • 我有一个mySQL查询,它将选择一些饮料并返回关于饮料的基本信息,以及该特定饮料的成分列表,以及该特定饮料的评级。我有三桌酒水,drinks_ratings,drinks_ing 所以,我的问题是,如果我想获得关于含有伏特加的饮料的信息,并且是在高球玻璃杯中,我会运行下面的查询... 它起作用了,只是我的问题是它没有返回所有的成分。例如,如果我返回“randomdrinkname1”,它碰巧有伏特