Как сделать красивый вывод в python
Перейти к содержимому

Как сделать красивый вывод в python

  • автор:

Красивый вывод списков, словарей и других структур данных

Модуль pprint предоставляет возможность «красиво распечатать» произвольные структуры данных Python в форме, которую можно использовать в качестве входных данных для интерпретатора. Если отформатированные структуры включают объекты, которые не являются базовыми типами Python, представление может не загружаться. Это может иметь место, если включены такие объекты, как файлы, сокеты или классы, а также многие другие объекты, которые не могут быть представлены как литералы Python.

Отформатированное представление сохраняет объекты на одной строке, если это возможно, и разбивает их на несколько строк, если они не укладываются в допустимую ширину. Создайте объекты PrettyPrinter явно, если нужно настроить ограничение ширины.

Словари сортируются по ключу перед вычислением ширины дисплея.

Класс PrettyPrinter() модуля pprint в Python

Класс `PrettyPrinter()` модуля `pprint` создает объект `PrettyPrinter` и принимает ключевые параметры, отвечающие за красивое форматирование и выходной поток.

Методы объекта PrettyPrinter модуля pprint в Python

В разделе представлены методы объекта `PrettyPrinter` модуля `pprint`. PrettyPrinter.pformat(), PrettyPrinter.pprint(), PrettyPrinter.isreadable(), PrettyPrinter.isrecursive(), PrettyPrinter.format().

Функция pformat() модуля pprint в Python

Функция `pformat()` модуля `pprint` возвратит красиво отформатированное представление объекта в виде строки.

Функция pp() модуля pprint в Python

Функция `pp()` модуля `pprint` печатает красиво отформатированное представление объекта с последующим переводом строки.

Функция pprint() модуля pprint в Python

Функция `pprint()` модуля `pprint` печатает отформатированное представление объекта в потоке `stream` с последующим переводом строки.

5 библиотек Python для красивого вывода на консоль

Независимо от того, создаете ли вы простой скрипт Python или приложение корпоративного уровня, элегантное взаимодействие с консолью избавит вас от надоедливой головной боли при устранении неполадок в будущем.

В этой статье мы рассмотрим некоторые библиотеки, которые позволят вам создавать удобные, элегантные взаимодействия с консолью и вывод для вашего кода.

Использование этих замечательных библиотек поможет вам создавать приложения командной строки, которые понравятся пользователям.

1. tqdm

Первый модуль, возможно, является одной из самых удобных функций, которые вы можете добавить в свой код. Индикатор прогресса! Разве это не расстраивает, когда вы понятия не имеете, сколько времени прошло во время долгого процесса?

Если вы когда-либо устанавливали пакет с помощью pip, вы видели этот модуль в действии.

import tqdm import time for _ in tqdm.tqdm(range(100)): time.sleep(0.25)

2. colorama

Кто не любит красочный консольный текст? Ошибки отображаются красным цветом, успешные операции — зеленым.

Используя colorama, вы можете раскрасить любой вывод текста и выделить определенные слова, фразы или строки.

from colorama import init init() from colorama import Fore, Back, Style print(Fore.GREEN + 'green text') print(Back.YELLOW + 'yellow back') print(Style.BRIGHT + 'bright' + Style.RESET_ALL) print('default')

3. art

Про art, думаю рассказывать не надо, достаточно посмотреть на это

art

from art import tprint tprint("Python")

4. simple-term-menu

Иногда все, что нужно для упрощения сложного приложения, — это меню. Любите вы их или ненавидите, но меню командной строки могут облегчить жизнь пользователя.

from simple_term_menu import TerminalMenu menu = TerminalMenu(['yes', 'no', 'maybe', 'so']) menu.show()

5. tabulate

Печать таблиц вручную с помощью Python в лучшем случае разочаровывает. Заголовки отображаются некорректно, столбцы смещаются влево или вправо. Вы можете облегчить себе жизнь с помощью tabulate.

import tabulate data = [ ['id', 'name', 'number'], [0, 'Jeff', 1234], [1, 'Bob', 5678], [2, 'Bill', 9123] ] results = tabulate.tabulate(data) print(results)

Как красиво выводить вложенные словари в Python

В Python словари являются мощным и полезным инструментом для хранения и обработки данных. Однако, при работе с большими и вложенными словарями, их вывод на экран может стать сложным и нечитаемым. Вложенные словари — это словари, в которых значения могут быть другими словарями. Например, так выглядит вложенный словарь:

my_dict = < "key1": < "key2": < "key3": "value1" >, "key4": "value2" >, "key5": "value3" >

Если просто вывести его на экран с помощью print , то получится нечитаемая «каша» из скобок и запятых. Но есть способ сделать вывод более наглядным и понятным.

Библиотека pprint в Python предоставляет функцию pprint() , которая выводит данные в «красивом» (pretty) формате. Она автоматически добавляет отступы и переносы строк, где это необходимо, чтобы сделать вывод более читаемым.

import pprint pp = pprint.PrettyPrinter(indent=4) pp.pprint(my_dict)

В данном примере, indent=4 указывает, что каждый уровень вложенности должен отделяться отступом в 4 пробела. Вы можете изменить это значение на любое другое в зависимости от ваших предпочтений.

Вывод будет выглядеть так:

< 'key1': < 'key2': < 'key3': 'value1' >, 'key4': 'value2' >, 'key5': 'value3' >

Как видно, теперь структура словаря намного более наглядна и понятна.

Таким образом, с помощью pprint() можно красиво и наглядно выводить на экран даже самые сложные и вложенные словари.

Цветной вывод текста в Python

Всем привет сегодня я хотел рассказать вам «Как сделать цветной вывод текста в Python?» это даже может сделать не опытный человек не имея каких-то знаний. Поэтому если вам интересно то продолжайте читать и тогда все поймете.

C помощью встроенных средств языка

На Python с помощью ANSI-код можно делать цвет, фон и т.д. Это очень мощный и удобный инструмент, с его помощью программист может напрямую определять цвет текста. ANSI коды работают на большинстве дистрибутивов Linux, но не поддерживаются консолью операционной системы Windows до Windows 10.

Изменять цвет текста с помощью ANSI кодов можно разными способами, например, использоваться функции или даже написать свой класс-обёртку для ANSI.

Использовать ANSI коды просто, для этого нужно знать базовый синтаксис и сами коды. Разбор на примере кода «\033[31m\033[43m»:

  • «033[» — обозначение того, что дальше идет какой-то управляющий цветом код.
  • 37m — это код цвета а именно красный.
  • 43m — это код цвет фона для текста.

Именно через этот ANSI-код мы можем делать текст разноцветным, не забывайте ставить «» иначе будет ошибка.

Давайте сделаем вывод текста на консоле через функции.

def out_red(text): print("\033[34m<>".format(text)) out_red("ПРИВЕТ")

Через print() мы задали цвет текста «ПРИВЕТ» синим цветом. Также можно добавить фон и стиль текста все в одну строку.

print("\033[3m\033[33m\033[41m<>\033[0m".format("Htua_0111100000"))
  • \033[3m — отвечает за стилб текста в данном случае это курсив.
  • \033[33m — отвечает за цвет текста.
  • \033[41m — отвечает за цвет фона.
  • <> — заменит на «Htua_0111100000»
  • \033[0m — отвечает за сброс к начальным значениям.

Вобщем вот целая таблица с кодами цвета, фона и стилей.

Сброс к начальным значениям

Смена цвета фона с цветом текста

Цветной вывод текста в Python через библиотеку Colorama

Этой библиотекой тоже можно сделать цветной текст. Достаточно просто знать код и все. Для того чтобы начать работать нужно просто установить библиотеку pip install colorama потом можно начать работать с этой библиотекой. Создайте файл colorama.py и можно приступать к написанию кода.

from colorama import init, Fore from colorama import Back from colorama import Style init(autoreset=True) print(Fore.BLUE + 'some red text') print(Back.WHITE + 'and with a green background') print(Style.BRIGHT + 'and in dim text') print(Style.RESET_ALL) print('back to normal now')

Вывод текста через Colorama

  1. Cначала импортируем init, Back, Style то есть все необходимые нам функции для вывода текста на консоль.
  2. Стоит обратить внимание на функцию init . Если её забыть запустить, то не будет поддерживаться вывод на Windows 10.
  3. print(Fore.BLUE + ‘some red text’) — это задает цвет текста также вы можете поменять на красный (RED) или зеленный (GREEN) и т.д.
  4. print(Back.WHITE + ‘and with a green background’) — это задает фон текста
  5. print(Style.BRIGHT + ‘and in dim text’) — стиль текста
  6. print(Style.RESET_ALL) — сброс всех стилей
  7. print(‘back to normal now’) — обычный текст

Цветной текст через библиотеку termcolor

Это тоже вторая библиотека отвечающее за цвет фон и так далее. pip install termcolor

from termcolor import colored, cprint print(colored('Привет мир!', 'red', attrs=['underline'])) print('Привет, я люблю тебя!') cprint('Вывод с помощью cprint', 'green', 'on_blue')

Импортируем colored и cprint, и пишем print(colored(‘Привет мир!’, ‘red’, attrs=[‘underline’])) тут вобще намного легче чем предыдущая attrs = [‘underline’] задает стиль текста. Следущее сpint(‘Вывод с помощью cprint’, ‘green’, ‘on_blue’) — это функция отвечает за цвет текста и фон. сpint(‘Ваш любимый текст’, ‘цвет текста’, ‘фон текста’)

Вывод

В общем, благодаря ANSI-кодом, библиотека colorama и termcolor можно создавать ваши любимые тексты, кстати можно с этой темой можно создавать мини викторины или что то другое. Я надеюсь на то что вам понравилось эта статья и надеюсь в будущем я продолжу писать все больше и больше статей на разные темы. Спасибо за внимание!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *