В квадратной матрице вычесть последнюю строку из остальных строк

Дана квадратная матрица. Необходимо из всех строк матрицы, кроме последней, вычесть последнюю строку. Следует написать программу с использованием функций.

В Python нельзя обратиться по индексу к элементу списка, которого еще не существует. Поэтому при заполнении матрицы можно сначала создавать одномерный список-массив (очередную строку матрицы), а затем добавить его в основной список-матрицу. Таким образом, при заполнении двумерного списка также используется метод append(), как и при заполнении одномерного.

В Python в функции передаются "указатели" на списки, а не сами списки. Поэтому в функциях отсутствует оператор return.

import random
 
def make_matrix(m,n):
	for i in range(0,n):
		a = []
		for j in range(0,n):
			a.append(int(random.random() * 100))
		m.append(a)
 
def minus_last(m):
	l = len(m)
	for i in range(0,l-1):
		for j in range(0,l):
			m[i][j] = m[i][j] - m[l-1][j]
 
def print_matrix(m):
	for i in m:
		print(i)
	print()
 
arr = []
 
make_matrix(arr,4)	
print_matrix(arr)
 
minus_last(arr)
print_matrix(arr)
 
[62, 54, 47, 44]
[84, 84, 64, 83]
[87, 96, 32, 30]
[3, 74, 42, 21]
 
[59, -20, 5, 23]
[81, 10, 22, 62]
[84, 22, -10, 9]
[3, 74, 42, 21]

Создано