row_count = (len(spisok))
column_count = (len(spisok[0]))
table.setColumnCount(column_count)
table.setRowCount(row_count)
table.setHorizontalHeaderLabels((list(spisok[0].keys())))
for row in range(row_count): # add items from array to QTableWidget
for column in range(column_count):
item = (list(spisok[row].values())[column])
table.setItem(row, column, QTableWidgetItem(item))
Результат:
Пример:
spisok = [{'some': 'any 1',
'some2': 'any 2',
'some3': 'any 3'},
{'some': 'any 1a',
'some2': 'any 2a',
'some3': 'any 3a'},
{'some': 'any 1b',
'some2': 'any 2b',
'some3': 'any 3b'},
{'some': 'any 1c',
'some2': 'any 2c',
'some3': 'any 3c'},
{'some': 'any 1d',
'some2': 'any 2d',
'some3': 'any 3d'}
]
Результат: