返回错误值

托比

我是Python的新手,是在工作培训中学习它的人,但是从一些HTML和C / C ++开始。关于如何使该细分市场发挥作用的任何建议都很棒!

def compute(tank_data): #in the parenthesis are the variables you want to pass from one def to another
aggregates = {}
list = []
for tank in tank_data: #
    sum = 0
    max_value = 0
    min_value = 1000
    #standdev = 0
    for reading in tank_data[tank]:
        sum = sum + float(reading)
        '''max_value = round(max(float(reading)),2)
        min_value = round(min(float(reading)),2)'''
        if reading >= max_value:
            max_value = float(reading)
        else:
            max_value = max_value
        if reading <= min_value:
            min_value = float(reading)
        else:
            min_value = min_value
        #standdev
    if tank in aggregates:
        aggregates[tank]['avg'] = round(sum/len(tank_data[tank]),2) #computing and printing average simutaneously
        aggregates[tank]['max'] = round(max_value,2)
        aggregates[tank]['min'] = round(min_value,2)
        #aggregates[tank]['STDEV'] = round()
    else:
        aggregates[tank] = {}
        aggregates[tank]['avg'] = round(sum/len(tank_data[tank]),2)
        aggregates[tank]['max'] = round(max_value,2)
        aggregates[tank]['min'] = round(min_value,2)
        #aggregates[tank]['STDEV'] = round()
print aggregates

我正在为文档获取正确的平均值(将其检查为excel),但是只有我的前三个最大值是正确的(我在此处运行的6个最大值中),并且所有最小值均返回“ 1000”。

当我使用注释掉的部分时:

'''max_value = round(max(float(reading)),2)
min_value = round(min(float(reading)),2)'''

我得到的错误是'float'对象不是可迭代的

任何帮助将不胜感激。:)

丹尼尔

使用python的内置函数:

def compute(tank_data):
    aggregates = {}
    list = []
    for tank, data in tank_data.iteritems():
        numbers = [float(v) for v in data]
        total = sum(numbers)
        max_value = max(numbers)
        min_value = min(numbers)
        info = {
            'avg': round(total/len(numbers),2) 
            'max': round(max_value,2),
            'min': round(min_value,2),
        }
        aggregates.set_default(tank, {}).update(info)
    print aggregates

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章