【发布时间】:2021-10-31 04:30:09
【问题描述】:
嘿,我正在尝试从列表中获取值的平均值,该列表具有字典中的值我一直返回此错误
all_students_avg = sum(numbers_lists) / len(numbers_lists)
TypeError:+ 的不支持的操作数类型:“int”和“list”
我不明白,我调用的值已经是整数,我已经尝试将它们转换为整数和浮点数。
Bob = {'name': 'bob', 'assignments': 80.0, 'presentation': 80.0, 'lab tasks': 60.0}
Geoff = {'name': 'Geoff', 'assignments': 90.0, 'presentation': 90.0, 'lab tasks': 90.0}
numbers_lists = [Bob['assignments'], Bob['presentation'], Bob['lab tasks']], [Geoff['assignments'], "\n",
Geoff['presentation'],
Geoff['lab tasks']]
all_students_avg = sum(numbers_lists) / len(numbers_lists)
print("This is all the students average score across all subjects: ", all_students_avg, )
【问题讨论】:
-
一个列表有这种格式,
numbers_lists = [item1, item2, item3, item4, item5, item6, ...]你有吗? -
numbers_lists是一个列表元组,这就是您收到错误的原因。您需要将您的元组扁平化为数字列表,以便sum()工作。 -
numbers = int(numbers_list) and.. avg = sum(numbers) / sum(numbers)(我不确定)
-
这不正确@httpanand
-
哦好的@ddejohn
标签: python list dictionary