Я работаю над проблемой, но мне интересно, как лучше форматировать мой вывод. В принципе, я работаю с массивом, который в 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' и' row in array' относятся к первым массивам в 'array'. – Junuxx