平均值的定义-Python

平均值的定义-Python,python,Python,我有一个清单,里面有一些小清单。每个小列表由15个元素组成,因此这个平均定义有效。但是,如果我更改每个小列表,使其具有不同数量的元素,那么此代码显然不起作用,我如何更改它,使其无论每个小列表中有多少个元素都能起作用?谢谢 def avelist(inputlist): total = 0 for row in inputlist: total += sum(row) return total/ (15* len(inputlist) 只需记录项目的数量:

我有一个清单,里面有一些小清单。每个小列表由15个元素组成,因此这个平均定义有效。但是,如果我更改每个小列表,使其具有不同数量的元素,那么此代码显然不起作用,我如何更改它,使其无论每个小列表中有多少个元素都能起作用?谢谢

def avelist(inputlist):
    total = 0
    for row in inputlist:
        total += sum(row)
    return total/ (15* len(inputlist)

只需记录项目的数量:

def avelist(inputlist):
    total = 0
    items = 0

    for row in inputlist:
        total += sum(row)
        items += len(row)

    return total / items

最简单的方法是展平嵌套列表并直接执行
sum
len

from itertools import chain

def avelist(inputlist):
    lst = list(chain.from_iterable(inputlist))
    return sum(lst) / len(lst)

感谢您提供这段代码片段,它可能会提供一些有限的、即时的帮助。通过展示为什么这是一个很好的问题解决方案,A将极大地提高它的长期价值,并将使它对未来有其他类似问题的读者更有用。请在你的回答中添加一些解释,包括你所做的假设。非常感谢,我现在如何使“项目”与较大列表中的小列表数量相等?我尝试了len(输入列表),但它似乎不起作用。谢谢
from itertools import chain

def avelist(inputlist):
    lst = list(chain.from_iterable(inputlist))
    return sum(lst) / len(lst)