我有一份清单:
l = [['a', 10, 30], ['b', 34, 89], ['c', 40, 60],['d',30,20]]
其中每个子列表中的第一项是名称,其他两个数字是标记(sub1和sub2)
嵌套列表可以是动态的,即嵌套列表的数量可以根据功能而变化。在
我要找的是
^{pr2}$我试过了:
c = 0
for i in range(0,len(list_marks1)):
c += list_marks1[i][1]
sub_1avg = float(c)/len(list_marks1)
d = 0
for i in range(0,len(list_marks1)):
d += list_marks1[i][2]
sub_2avg = float(d)/len(list_marks1)
但这是不对的。在
有什么最佳的方法吗?因为嵌套列表中的主题数也可以更改。在
功能性方法:
这种方法适用于任何子列表长度
您只需使用
sum
和生成器表达式:或者在列表理解中这样做:
^{pr2}$同样,对于一个子列表的平均值:
使用Python3.4或更高版本时,可以将} :
sum / length
替换为^{你问过最好的方法,所以我应该提一下有专门用于表格数据的包。例如,如果您有
pandas
,那么使用DataFrame
和mean
就更容易了:样本输出
^{pr2}$相关问题 更多 >
编程相关推荐