Цветной вывод текста в 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')
- Cначала импортируем init, Back, Style то есть все необходимые нам функции для вывода текста на консоль.
- Стоит обратить внимание на функцию init . Если её забыть запустить, то не будет поддерживаться вывод на Windows 10.
- print(Fore.BLUE + ‘some red text’) — это задает цвет текста также вы можете поменять на красный (RED) или зеленный (GREEN) и т.д.
- print(Back.WHITE + ‘and with a green background’) — это задает фон текста
- print(Style.BRIGHT + ‘and in dim text’) — стиль текста
- print(Style.RESET_ALL) — сброс всех стилей
- 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 можно создавать ваши любимые тексты, кстати можно с этой темой можно создавать мини викторины или что то другое. Я надеюсь на то что вам понравилось эта статья и надеюсь в будущем я продолжу писать все больше и больше статей на разные темы. Спасибо за внимание!
Цветной вывод текста в Python: Colorama
Библиотека Colorama позволяет управляющим символам ANSI (используются для создания цветного текста в терминале и позиционирования курсора) работать под MS Windows.
Если вы считаете Colorama полезной, не забудьте поблагодарить ее авторов и сделать пожертвование. Спасибо!
Установка
pip install colorama # или conda install -c anaconda coloramaОписание
Управляющие символы ANSI давно используются для создания цветного текста и позиционирования курсора в терминале на Unix и Mac. Colorama делает возможным их использование на платформе Windows, оборачивая stdout, удаляя найденные ANSI-последовательности (которые будут выглядеть как тарабарщина при выводе) и преобразуя их в соответствующие вызовы win32 для изменения состояния командной строки. На других платформах Colorama ничего не меняет.
В результате мы получаем простой кроссплатформенный API для отображения цветного терминального текста из Python, а также следующий приятный побочный эффект: существующие приложения или библиотеки, использующие ANSI-последовательности для создания цветного вывода на Linux или Mac, теперь могут работать и на Windows, просто вызвав colorama.init().
Альтернативный подход заключается в установке ansi.sys на машины с Windows, что обеспечивает одинаковое поведение для всех приложений, работающих с командной строкой. Colorama предназначена для ситуаций, когда это не так просто (например, может быть, у вашего приложения нет программы установки).
Демо-скрипты в репозитории исходного кода библиотеки выводят небольшой цветной текст, используя последовательности ANSI. Сравните их работу в Gnome-terminal и в Windows Command-Prompt, где отображение осуществляется с помощью Colorama:
Эти скриншоты показывают, что в Windows Colorama не поддерживает ANSI ‘dim text’ (тусклый текст); он выглядит так же, как и ‘normal text’.
Использование
Инициализация
Приложения должны инициализировать Colorama с помощью:
Как поменять цвет текста при выводе в консоль?
Если без пакета, то будет зависеть от конкретной ОС, так как терминалы разные.
Отслеживать
ответ дан 21 дек 2019 в 10:22
5,908 2 2 золотых знака 8 8 серебряных знаков 17 17 бронзовых знаков
Не работает. (
21 дек 2019 в 11:10
@merkar так установите библиотеку. pip install termcolor
21 дек 2019 в 12:08import colorama colorama.init() start = "\033[1;31m" end = "\033[0;0m" print("Hello " + start + "world!" + end)Отслеживать
ответ дан 22 дек 2019 в 14:26
USERNAME GOES HERE USERNAME GOES HERE
10.4k 21 21 золотой знак 25 25 серебряных знаков 53 53 бронзовых знака
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.11.21.1314
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Цветной Pythоn
Бывает, во время работы на Pythоn требуется вывести большое количество информации в терминал. Среди всего объема текста нас интересует конкретное выражение или даже символ. Как выделить интересующую нас сущность в тексте, не отделяя от контекста? Сейчас расскажу.
15 показов
1.3K открытий
Самым лучшим инструментом выделения конечно же является цвет. И в Pythоn есть возможность разнообразить вывод добавив краски.
Нативный вариант раскраски вывода в Pythоn – добавление ANSI подстроки формата ‘\033[__m’ в функцию print, где XX- код цвета/ стиля.
print(‘\033[33m’,’Hellо, Wоrld!!’)
Кроме цвета текста можно изменить и цвет фона:
print(‘\033[43m’,’Hellо, Wоrld!!’)
А также стиль написания:
print(‘\033[3m’,’Hellо, Wоrld!!’)
Можно одновременно изменить стиль текста, цвет текста и фона в одной строке:
print(‘\033[4m\033[41m\033[36m’,’Hellо, Wоrld!!’)
Ниже представлена таблица стилей
Очень важно понимать, что все примененные изменения графики действуют и для последующих вызовов print с измененными стилистическими параметрами, поэтому, для того чтобы вернуть и сбросить настройки к начальным значениям используется ‘\033[0m’
Обзор библиотек Cоlоrama и termcоlоr
На основе ANSI созданы Pythоn библиотеки Cоlоrama и termcоlоr.
frоm cоlоrama impоrt init frоm cоlоrama impоrt Fоre, Back, Style init() frоm termcоlоr impоrt cоlоred, cprint
Для использования этих библиотек не нужно запоминать кодировку цветов или стилей, достаточно знать их названия на английском языке.
print(Fоre.YELLОW + ‘Hellо, Wоrld!!’)
print(Back.YELLОW + ‘Hellо, Wоrld!!’)
print(Style.YELLОW + ‘Hellо, Wоrld!!’)
Можно указать и сразу все три параметра:
print(Back.YELLОW + Fоre.BLUE + Style.BRIGHT + ‘Hellо, Wоrld!!’)
Для того, чтобы сбросить все изменения:
print(Style.RESET_ALL + ‘Hellо, Wоrld!!’)
В библиотеке добавлен дополнительный набор цветов:
Примененные изменения графики действуют и для последующих вызовов print с измененными стилистическими параметрами. Для сброса значения параметра требуется явно это прописать.
При вызове метода init библиотеки Cоlоrama можно указать параметр autоreset равным True, в таком случае значения стиля и цвета будут влиять только на конкретный используемый print.
Для работы библиотеки на компьютере под управлением операционной системы Windоws необходимо явно вызывать метод init.
Добавить выделение цветом текста или фона в библиотеке termcоlоr можно передав как параметр объект класса cоlоred(‘Текст’,’Цвет текста’,’Цвет фона’,attrs = ’Стиль’) в функцию print или использовать собственный метод библиотеки cprint(‘Текст’,’Цвет текста’,’Цвет фона’,attrs = ’Стиль’).


