我正在处理一个问题,但我很好奇如何更好地格式化我的输出。基本上,我正在处理一个数组,它在Python中基本上是列表中的一个列表,或者我应该说嵌套列表。我正在处理的问题与电影评论的平均评分有关,但我们只需说第一列是编号为1-3或1-5(取决于数组大小)和电影评论的“评论者”是行,这也是大小取决于数组本身,3x3,6x6等,所以下面我将包括我的代码。Python 3 - 帮助格式化数组/表格输出
array = [[4,6,2,5], [7,9,4,8], [6,9,3,7]]
def review(array):
'function that outputs average review of movie scores'
ncols = len(array[0]) #finds number of columns in array
total = 0
for row in array:
for el in row:
total+= el
avg = total/ncols
print(end = ' ')
print(' Reviewer average:', avg)
现在,这样做精至于计算去上班,但我需要做的是有“审阅平均”数1,2,3,或基于1,2,3,4,5关闭数组中的列数量,换句话说,它应该根据数组大小输出列号。因此,例如,如上面我的代码原有的数组一个3x3的阵列输出应该是这样的:
Reviewer 1 average: 4.25
Reviewer 2 average: 11.25
Reviewer 3 average: 17.5
然而,正如我说我的问题是,我似乎无法弄清楚如何号码它与任何表/数组的大小工作,我想无论是工作,如果它的6x6 3x3的或等
我的电流输出是这样的:
Reviewer average: 4.25
Reviewer average: 11.25
Reviewer average: 17.5
你确定你的平均值是正确的? – erip
除了不重置总数外,您似乎也在混淆行和列。 'ncols'和'array in array'都指'array'中的第一个数组。 – Junuxx