Python 在列表中的元组中查找最大值、平均值、最小值和相加值

标签 python while-loop tuples

我需要创建一个接受元组列表然后输出每个元组中最高、最低、平均和总计的函数。

例如: 这就是它要接受的内容:

([(99,86,70,7),(100, 96, 65, 10), (50, 40, 29, 11)]) 

我需要一个函数,它在每个元组中获取最高的 int,但仅在索引 [0] 处。然后它需要对索引 [1] 处的数字进行平均,然后在索引 [2] 处找到最低的 int,然后将每个元组的最后一个索引中的值相加。

所以输出看起来像这样:

(100, 74, 29, 28) 

这就是我现在拥有的。它完全错误而且很愚蠢,我发现元组非常困惑。我正在尝试仅使用 while/for 循环来执行此操作,但我只是对元组和列表感到困惑。

def grades(listt):
    count=0
    while count < len(listt):
        x=();
        for i in range(0, len(listt)):
            x(listt(0[count])) > x(listt(i[count]))
            print x[count]

print grades([(99,86,70,7),(100, 96, 65, 10), (50, 40, 29, 11)]) 

最佳答案

def grades(alist):
    highest, average, lowest, sumvalues = alist[0]
    for i in alist[1:]:
        if i[0] > highest: highest = i[0]
        average += i[1]
        if i[2] < lowest: lowest = i[2]
        sumvalues += i[3]
    average = average / len(alist)
    return highest, average, lowest, sumvalues

关于Python 在列表中的元组中查找最大值、平均值、最小值和相加值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16313677/

相关文章:

python - 如何从 model.predict() 结果中获取单个值

python - Python 中的截断路径

java - 为什么我的数字在前 100000 个方格中的结果是负数?

Java while 循环没有按预期工作

python - 如何在 Python 中复制包含嵌套元组的元组?

python - fabric - 如何在部署时获取主机名

python - 用字典中的频率/值替换 NumPy 数组条目

c - 我的 C 代码有什么问题?它是 CodeBlock 16.01 中的编译器错误吗?

python - 如何忽略元组的解压缩部分作为 lambda 的参数?

python - 如果键为空则拆分元组并将对应值添加到其先前的元组值