Я пытаюсь напечатать 2d матрицу с динамическими значениями.В основном я хотел бы что-то, что выглядит следующим образом:
---------------------------------------------
| Column 1 | Column 2 | Column 3 | Column 4 |
---------------------------------------------
| A | A_2 | A_3 | A_4 |
| B | B_2 | B_3 | B_4 |
| C | C_2 | C_3 | C_4 |
---------------------------------------------
с A_2
, A_3
... динамическим (постоянно обновляется).Возможно, метод print - не лучшее решение, поэтому любая другая идея относительно быстро генерировать такую таблицу приветствуется.
Я подумал, что мог бы создать класс, который будет очень общим.Примерно так:
class Viewer:
def __init__(self, header_columns):
# start building the viewer
def update_row(self, data_row):
# add the row if it does not exist
# else, update the row with new values
# and update the table printed
def main():
header = ['id', 'value1', 'value2']
myview = Viewer(header)
# start updating the values
for i in range(10):
firstid = {'id': 'A', 'value1': i, 'value2': i}
myview.update_row(firstid)
Если быть более общим, заголовки столбцов могут быть обновлены с помощью ключей объектов строк.
Однако я не понимаю, как я могу это сделать,Я читал, что могу использовать библиотеку Curses (я использую Mac OS), но я действительно не уверен, что она справится с работой