tabulate может сделать это из коробки, см. Мой пример с таблицей из вашего вопроса.
import tabulate
example_table = [
{"Database" : "information_schema"},
{"Database" : "mysql"},
{"Database" : "performance_schema"},
{"Database" : "sys"}
]
print(
tabulate.tabulate(
example_table,
headers={
k : v
for k,v in zip(
example_table[0].keys(),
example_table[0].keys()
)
},
tablefmt="psql"
)
)
Распечатывает
+--------------------+
| Database |
|--------------------|
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+