gpt4 book ai didi

python - 对列表字典中的值求和并计算列表中第一项的所有零值

转载 作者:太空狗 更新时间:2023-10-30 00:48:36 24 4
gpt4 key购买 nike

我有一个字典 dictData,它是从 csv 文件的 3 列(0、3 和 4)创建的,其中每个键是一个日期时间对象,每个值是一个列表,包含两个数字(我们称它们为 a 和 b,所以列表是 [a,b])存储为字符串:

import csv
import datetime as dt
with open(fileInput,'r') as inFile:
csv_in = csv.reader(inFile)
dictData = {(dt.datetime.strptime(rows[0],'%d/%m/%Y %H:%M')):[rows[3],rows[4]] for rows in csv_in}

我想做两件事:首先,我想对整个字典中列表中的每个值求和(即对所有 a 值求和,然后对所有 b 值求和)。如果它是单值字典,我会这样做:

total = sum((float(x) for x in dictData.values()))
  1. 如何更改它以便 .values 标识列表中的第一个(或第二个)项目? (即 a 或 b 值)

  2. 我想计算列表中第一项的所有零值。

最佳答案

设置

dictData = {'2010': ['1', '2'],
'2011': ['4', '3'],
'2012': ['0', '45'],
'2013': ['8', '7'],
'2014': ['9', '0'],
'2015': ['22', '1'],
'2016': ['3', '4'],
'2017': ['0', '5'],
'2018': ['7', '8'],
'2019': ['0', '9'],
}

print 'sum of 1st items = %d' % sum([float(v[0]) for v in dictData.values()])
print 'sum of 2nd items = %d' % sum([float(v[1]) for v in dictData.values()])
print 'count of zeros = %d' % sum([(float(v[0]) == 0) for v in dictData.values()])


sum of 1st items = 54
sum of 2nd items = 84
count of zeros = 3

关于python - 对列表字典中的值求和并计算列表中第一项的所有零值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38470125/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com