Как красиво вывести таблицу, ровно по полям?
Таблица будет представлена в питоне как список с кортежами внутри. Соответственно все поля разные и в некоторых до фига символов, когда я вывожу её на экран всё плывёт:
for i in tabl():
for j in i:
# print(str(j).ljust(20), end="\t")
print(j, end="\t")
print()
Вот это получаю на выходе:
Как красиво вывести таблицу, ровно по полям?
Как надо правильно её выводить, что и лишних отступов не было, и длинные поля не толкали соседние?
(В процессе написания вопроса узнал про pandas. Если не сложно, в интернете конечно полно уроков по нему, но вот с лету не понятно, там много функций, но мне нужна одна, подскажите если не сложно про мой случай. Это когда есть один список состоящий из кортежей.)
Ответы (2 шт):
Автор решения: Сергей Попков
→ Ссылка
http://zetcode.com/python/prettytable/ супер решение
from prettytable import PrettyTable
x = PrettyTable()
x.field_names = ["City name", "Area", "Population", "Annual Rainfall"]
x.add_row(["Adelaide", 1295, 1158259, 600.5])
x.add_row(["Brisbane", 5905, 1857594, 1146.4])
x.add_row(["Darwin", 112, 120900, 1714.7])
x.add_row(["Hobart", 1357, 205556, 619.5])
x.add_row(["Sydney", 2058, 4336374, 1214.8])
x.add_row(["Melbourne", 1566, 3806092, 646.9])
x.add_row(["Perth", 5386, 1554769, 869.4])
print(x)
Автор решения: Aleksey Vlasov
→ Ссылка
```
from prettytable import PrettyTable
x = PrettyTable()
x.field_names = ["City name", "Area", "Population", "Annual Rainfall"]
x.add_row(
[
["Adelaide", 1295, 1158259, 600.5],
["Brisbane", 5905, 1857594, 1146.4],
["Darwin", 112, 120900, 1714.7],
["Hobart", 1357, 205556, 619.5],
["Sydney", 2058, 4336374, 1214.8],
["Melbourne", 1566, 3806092, 646.9],
["Perth", 5386, 1554769, 869.4]
]
)
print(x)
```
