如何计算字典中列表的元素个数?

8 浏览
0 Comments

如何计算字典中列表的元素个数?

我正在学习Python,需要一些处理字典的技巧。请看下面的代码。我尝试使用if word in filename.values()if filename[word]来检查字典中是否存在该单词,但没有成功。我想要检查并且如果可能的话统计该单词在字典的列表中出现的总次数。请给予指导!

files = {"f1": ["cat", "dog", "mouse"],
         "f2": ["rat", "elephant", "tiger"]}
word = "dog"
for filename in files:
    if word in filename.values():
        print(True)
    else:
        print(False)

0
0 Comments

问题的原因是需要统计字典中嵌套列表的元素个数,但是当前的代码只能判断元素是否存在,而不能统计个数。

解决方法是使用values.count(word)来统计列表中指定元素的个数,替换原来的计数器。以下是修改后的代码:

files = {"f1": ["cat", "dog", "mouse"],
         "f2": ["rat", "elephant", "tiger", "dog"]}
word = "dog"
counter = 0
for values in files.values():
    counter += values.count(word)
print(counter)

运行以上代码,就可以得到正确的元素个数统计结果。

0