我的字典有一些关键错误的问题。
result={}
for (k,v) in movies.items():
if not v[1] in result:
result[v[0]]=0
result[v[0]]+=int(1)
if not v[2] in result:
result[v[2]]=0
result[v[2]]+=int(1)
if not v[3] in result:
result[v[3]]=0
result[v[3]]+=int(1)
if not v[4] in result:
result[v[4]]=0
result[v[4]]+=int(1)
if not v[5] in result:
result[v[5]]=0
result[v[5]]+=int(1)
list5= sorted(result.items(),key=operator.itemgetter(1),reverse=True)
print list5
所以我试图创建一个字典,在其中循环遍历另一个字典(电影),并将每部电影中的 Actor 添加为我的键。我字典中的键是 Actor 的名字,值是他总共拍了多少部电影。但是我似乎遇到了一个关键错误。知道为什么会这样吗?
P.S- 每部电影中有 5 个 Actor ,这就是为什么我有 5 个循环键。
谢谢,朱奈德
最佳答案
在这里使用 Counter
会容易得多。作为奖励,这部电影有多少 Actor 已经无关紧要了。
from collections import Counter
c = Counter(i for v in movies.values() for i in v)
print c.most_common()
另一种遍历 actor 的方法是使用 chain.from_iterable
from itertools import chain
c = Counter(chain.from_iterable(movies.values()))
print c.most_common()
关于python - 字典的关键错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19853027/