Python

Работа с матрицами на ЯП Python

Как выводить матрицу красиво/ровно?
чево==================
UPD: В качестве примера
 from random import randint 

n = 5
arr = [[randint(-50,20) for _ in range(n)] for _ in range(n)]

for i in range(n):
for j in range(n):
print('%4d' % arr[i][j], end='')
print()
НЕ
Николай Егорцев
73 465
Лучший ответ
Евгений Курлов ахахахах, ща на Imgur грузану
Евгений Курлов Дополнил вопрос)
Адилет Адилбек Что ж... Сегодня мой багаж знаний пополнился, так что спасибо тебе ещё и от меня, чувак)


Чтобы выводить матрицу ровно - потребуется прибегнуть к расчёту либо табуляций, либо количества пробелов.

Я как-то раз писал программу на C# для работы с матрицами, тоже захотел сделать красивый вывод этой самой матрицы.

Если бы мы точно знали, что у нас будут цифры какого-то точного количества символов - всё было бы абсолютного легко - просто делаем доп. пробел в столбце, если видим, что один из элементов имеет знак "-"

Я же - прибегнул к способу отрисовки матрицы по столбцам, запоминая при этом длину самого длинного числа прошлого столбца и переводя курсор консоли по координате X на позицию <количество символов самого длинного числа> + 1(пробел) и выводил следующий столбец.

В Python - без понятия как прыгать курсором по консоли, если честно, ахах)
Но один из вариантов я тебе привёл.

Другой способ, который я вижу - это разбить каждый столбец на список строк, обработать его, добавив нужное количество пробелов к каждому элементу, объединить в матрицу строк и выводить как обычную двумерную матрицу.

Может мои способы и не самые оптимальные, зато один из них(первый) - точно рабочий))