我有一个词典列表.每个Dictionary都有一个整数键和元组值.我想总结位于元组某个位置的所有元素.
例:
myList = [{1000:("a",10)},{1001:("b",20)},{1003:("c",30)},{1000:("d",40)}]
Run Code Online (Sandbox Code Playgroud)
我知道我可以这样做:
sum = 0
for i in myList:
for i in myList:
temp = i.keys()
sum += i[temp[0]][1]
print sum
Run Code Online (Sandbox Code Playgroud)
有更多的pythonic方式吗?谢谢
使用生成器表达式,遍历所有字典然后循环它们的值:
sum(v[1] for d in myList for v in d.itervalues())
Run Code Online (Sandbox Code Playgroud)
对于Python 3,替换d.itervalues()为d.values().
演示:
>>> sum(v[1] for d in myList for v in d.itervalues())
100
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
442 次 |
| 最近记录: |