首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >获取Python字典中所有键的数目。

获取Python字典中所有键的数目。
EN

Stack Overflow用户
提问于 2016-02-16 08:50:37
回答 10查看 30.4K关注 0票数 40

我有一本Python2.7的字典。

我需要快速计算所有键的数量,包括每个字典中的键。

因此,在这个例子中,我需要所有键的数目为6:

代码语言:javascript
运行
复制
dict_test = {'key2': {'key_in3': 'value', 'key_in4': 'value'}, 'key1': {'key_in2': 'value', 'key_in1': 'value'}}

我知道我可以用for循环遍历每个键,但是我正在寻找一种更快的方法来实现这一点,因为我将拥有成千上万个键,而这样做是无效的:

代码语言:javascript
运行
复制
count_the_keys = 0

for key in dict_test.keys():
    for key_inner in dict_test[key].keys():
       count_the_keys += 1

# something like this would be more effective
# of course .keys().keys() doesn't work
print len(dict_test.keys()) * len(dict_test.keys().keys())
EN

Stack Overflow用户

发布于 2016-02-16 08:59:00

怎么样

代码语言:javascript
运行
复制
n = sum([len(v)+1 for k, v in dict_test.items()])

你所做的是对所有的键k和值进行迭代,v是你的副词。您将获得这些字典的长度,并添加一个以包含用于索引子字典的键。

然后,对列表进行加和,以得到完整的键数。

编辑:

为了澄清,此片段仅适用于所要求的字典词典。不是字典的字典.

因此,不要将其用于嵌套示例:)

票数 9
EN
查看全部 10 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35427814

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档