.
Я использовал TextTable и благословенный Много для строительства стилизованных таблиц ASCII. Недавно я опубликовал свой код в качестве пакета Python, который сочетает в себе эти два модуля для строительства красочных фиксированных таблиц ASCII.
Установка пакета
pip install blessedtable
Начиная
Итализация таблицы с параметрами по умолчанию будет распечатать таблицу без какого-либо форматирования. Чтобы узнать больше о структурировании таблицы ASCII Следуйте этим связь
from blessedtable import Blessedtable table = Blessedtable() table.set_deco(15) table.set_cols_align(["l", "r", "c"]) table.set_cols_valign(["t", "m", "b"]) table.add_rows([["Name", "Age", "Nickname"], ["Mr\nXavier\nHuon", 32, "Xav'"], ["Mr\nBaptiste\nClement", 1, "Baby"], ["Mme\nLouise\nBourgeau", 28, "Lou\n\nLoue"]]) print(table.draw())
Для стилизации Благодарность
Использует три параметра над Текстовизма
Отказ Это border_format, header_format и column_format
Отказ
border_format
должен быть либо Нет
или типа ул
header_format
должен быть либо Нет
или типа ул ...| или
Список строк
column_format должен быть либо
Нет или типа
ул …| или Список
строк
Примечание: Строки должны быть форматированными строками. Приведены примеры ниже.
'normal_on_normal' # text and background both have default color 'red' # text color is red, background has default color 'red_on_white' # text color is red, background is white 'italic_red_on_blue' # text italic and red, and background is white
Все имена цветов должны быть по имени; Все имена цветов можно найти здесь Отказ Чтобы узнать больше о благословенный Форматирование, следуйте за этим связь
Три параметра могут быть установлены либо при инициализации, либо с использованием поселенцев.
table = Blessedtable(header_format='green_on_blue', border_format='blue', column_format='blue_on_rosybrown2') #or table = Blessedtable() table.set_deco(15) table.set_cols_align(["l", "r", "c"]) table.set_cols_valign(["t", "m", "b"]) table.add_rows([["Name", "Age", "Nickname"], ["Mr\nXavier\nHuon", 32, "Xav'"], ["Mr\nBaptiste\nClement", 1, "Baby"], ["Mme\nLouise\nBourgeau", 28, "Lou\n\nLoue"]]) table.header_format = 'green_on_blue' table.border_format = 'blue' table.column_format = 'blue_on_rosybrown2' print(table.draw())
Для достижения разных цветов для колонн для обоих заголовков и строк, передайте список, имеющие форматирование строк, соответствующие каждому из столбцов.
Примечание: Количество элементов в списке должно быть равно количеству столбцов подряд; Каждый элемент (строка формата) соответствует последовательным столбцам. Если header_format
это Нет
Тогда он наследует column_format
наоборот. Если вы не хотите, чтобы это наследует стили, установите header_format
или column_format
к "normal_on_normal"
hf = ['green', 'italic_blue', 'purple'] cf = ['white_on_green', 'italic_orange_on_blue', 'teal'] table.header_format = hf table.border_format = 'yellow' table.column_format = cf print(table.draw())
Играйте с этим и дайте мне знать, что вы думаете в комментариях!
Код размещен на гадость .
Оригинал: “https://dev.to/paulshuvo/blessedtable-a-python-package-for-building-colorful-formatted-ascii-tables-45np”