We transpose the list so that the Nth column is the Nth list of the entire array Column n = l[n-1])
headers = ['Column 1', 'Column 2', 'Column 3']
l = [[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
table = tabulate.tabulate(list(map(list, zip(*l))), headers=headers, tablefmt="github")
d = {'Column 1': [1, 2, 3],
'Column 2': [4, 5, 6],
'Column 3': [7, 8, 9],}
table = tabulate.tabulate(d, headers=list(d.keys()), tablefmt="github")
| Column 1 | Column 2 | Column 3 |
|------------|------------|------------|
| 1 | 4 | 7 |
| 2 | 5 | 8 |
| 3 | 6 | 9 |