Q
總和蟒蛇
2
A
回答
4
>>> from collections import defaultdict
>>> d = defaultdict(list)
>>> for i, j in L:
... d[i].append(j)
...
>>> [[i, sum(j)] for i, j in d.items()]
[['titi', 10], ['toto', 5]]
感謝@raymonad的替代,清潔,解決方法:
>>> d = defaultdict(int)
>>> L = [["toto", 3], ["titi", 10], ["toto", 2]]
>>> for i, j in L:
... d[i] += j
...
>>> d.items()
[('titi', 10), ('toto', 5)]
3
您可以使用itertools.groupby
到組的第一個項目,然後計算總和:
In [1]: data = [["toto", 3], ["titi", 10], ["toto", 2]]
In [2]: from itertools import groupby
In [3]: from operator import itemgetter
In [4]: key = itemgetter(0)
In [5]: [[k, sum(l[1] for l in g)]
..: for k, g in groupby(sorted(data, key=key), key=key)]
Out[5]: [['titi', 10], ['toto', 5]]
0
l1=[["toto", 3], ["titi", 10], ["toto", 2]]
d={}
for i in range(len(l1)):
try:
d[l1[i][0]]+=l1[i][1]
except KeyError:
d[l1[i][0]]=l1[i][1]
l2=[]
for k,v in d.items():
l2.append([k,v])
相關問題
- 1. 繪製蟒蛇的總和
- 2. 蟒蛇總和/平均/產品
- 3. 組合總和蟒蛇遞歸範圍
- 4. 打印總和爲while循環蟒蛇
- 5. 和值蟒蛇
- 6. 蟒蛇和UnboundLocalError
- 7. 蟒蛇和palindromes
- 8. 蟒蛇在蟒蛇
- 9. 編譯和蟒蛇
- 10. 字典和蟒蛇
- 11. 修改和蟒蛇
- 12. MySQLdb的和蟒蛇
- 13. 菌種和蟒蛇
- 14. Lighttpd和CGI蟒蛇
- 15. 生成和蟒蛇
- 16. 解析和蟒蛇
- 17. 蟒蛇 - 字典和
- 18. 更新蟒蛇3.5蟒蛇
- 19. 無法在蟒蛇蟒蛇
- 20. 蟒蛇2.7:從CMD蟒蛇
- 21. 蟒蛇和字典鍵和總和字典值
- 22. 蟒蛇 - 總理命令爲偶數
- 23. 蟒蛇
- 24. 蟒蛇
- 25. 蟒蛇
- 26. 蟒蛇
- 27. 的Python的virtualenv與蟒蛇和蟒蛇python.org 3.5
- 28. 蟒蛇克隆的蟒蛇和pygame的人工智能
- 29. 蟒蛇的ctypes和sysctl的
- 30. CPLEX蟒蛇和約束
或者乾脆'defaultdict (int)'在循環中用'd [i] + = j'。 – raymonad
@raymonad是不是python真棒? – TerryA