[英]Iterate through a list of dictionaries to sum value with the same key
请友好一点; 我是新手。
我正在尝试对同一个列表中多个字典的值求和,所有字典都使用相同的键(record_amount)。 这看起来应该相当简单,但我不能迭代浮点数。 我该如何解决这个问题?
examplelist = []
def append_data():
examplelist.append({
'record_number':len(examplelist)+1,
'record_amount':float(input('Amount: '))
})
append_data()
for data in examplelist:
print(sum(data['record_amount']))
这导致“浮动”object 不可迭代。 我尝试将初始输入更改为 str 输入而不是 float 输入,但这似乎没有帮助。
我也尝试过类似的方法:
def net_income_func():
cheers = examplelist[0:]['record_amount']
for data in cheers:
print(data)
如果有人能指出我正确的方向,那就太好了。 谢谢!
您的程序需要进行一些调整才能有意义:
def append_data(examplelist):
examplelist.append({
'record_number':len(examplelist)+1,
'record_amount':float(input('Amount: '))
})
examplelist = []
append_data(examplelist)
print(sum([data['record_amount'] for data in examplelist]))
我已将append_data()
更改为将examplelist
作为参数而不是全局参数。
您可以使用列表理解来提取值,然后sum()
将对所有这些值求和。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.