Вам нужно:
print(index,matrix[0][index])
вместо:
print(index,matrix[index][0])
Это потому, что первый индекс связан с внешним списком (строками). matrix[index]
возвращает всю строку, а затем нарезку ее возвращает элементы из этой строки.
Вы также должны изменить:
for index in range(len(matrix)):
до:
for index in range(len(matrix[0])):
по той же причине. Так как это квадратная матрица, она сработает в любом случае, но это просто удача. На самом деле, для простоты лучше всего сделать это:
for i, e in enumerate(matrix[0]):
print(i, e)
На каждой итерации цикла enumerate()
возвращает кортеж, состоящий из индекса и элемента вместе. Если вам не нужен индекс, вы можете упростить его до:
for e in matrix[0]:
print(e)
Обычно вам нужно использовать range()
, только если вы еще не начинаете со списка (или чего-то еще, что можно повторять).