Перейти к содержимому

Как поменять цвет в python

  • автор:

Как поменять цвет в python

Ряд виджетов в Tkinter поддерживают установку цвета для различных аспектов. Например, у виджета Label можно установить параметры foreground и background , которые отвечают за цвет текста и фона соответственно. У некоторых виджетов настройки цвета спрятаны в параметре style.

Цвет можно установить разными способами:

    Именнованные цвета, например, «red», который соответствует красному цвету. В зависимости от платформы набор доступных именнованных цветов может отличаться. Все доступные именнованные цвета можно посмотреть в документации. Например:

ttk.Label(text="Hello World", foreground="red")
from tkinter import * from tkinter import ttk root = Tk() root.title("METANIT.COM") root.geometry("250x200") label = ttk.Label(text="Hello World", padding=8, foreground="#01579B", background="#B3E5FC") label.pack(anchor=CENTER, expand=1) root.mainloop()

Установка цвета в Tkinter и Python

Если нам даны отдельные коды RGB-составляющих, то их можно сконвертировать в шестнадцатеричный код цвета:

from tkinter import * from tkinter import ttk root = Tk() root.title("METANIT.COM") root.geometry("250x200") def get_rgb(rgb): return "#%02x%02x%02x" % rgb label = ttk.Label(text="Hello World", padding=8, foreground=get_rgb((0, 77, 64)), background=get_rgb((128, 203, 196))) label.pack(anchor=CENTER, expand=1) root.mainloop()

Здесь функция get_rgb в качестве параметра получает кортеж из трех составляющих цвет RGB и с помощью форматирования строки переводит значения кортежа в шестнадцатеричный код

Как изменить цвет текста в Python

Как изменить цвет текста в Python

Выводить текст на консоли в разных цветах довольно удобно и практично, от создания причудливых сценариев сканирования до выделения различных типов сообщений журнала (отладочные, информационные, критические и т. Д.) в ваших программах. В данной статье вы узнаете, как печатать цветной текст на Python с помощью библиотеки colorama.

Для работы нам требуется установить библиотеку:

>>>pip install colorama

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

Далее создадим простой Python файл:

from colorama import init, Fore, Back, Style

»’
мы вызываем функцию init(), которая необходима в среде Windows для правильной работы colorama, на других платформах она ничего не делает, поэтому вы можете удалить ее.
»’

Далее определяем все доступные цвета переднего плана в списке «FOREGROUND» и цвета фона в списке «BACKGROUND», мы также определяем список BRIGHTNESS для различных настроек яркости.

# список доступных фронтальных цветов

FOREGROUND = [ Fore.BLACK, Fore.RED, Fore.GREEN, Fore.YELLOW, Fore.BLUE, Fore.MAGENTA, Fore.CYAN, Fore.WHITE ]

# список доступных фоновых цветов

BACKGROUND = [ Back.BLACK, Back.RED, Back.GREEN, Back.YELLOW, Back.BLUE, Back.MAGENTA, Back.CYAN, Back.WHITE ]

BRIGHTNESS = [ Style.DIM, Style.NORMAL, Style.BRIGHT ]

»’
Далее давайте создадим функцию, которая обертывает обычную функцию print() Python, но с возможностью установки цвета и яркости
»’

def print_with_color(s, color=Fore.WHITE, brightness=Style.NORMAL, **kwargs):
«»»Служебная функция, обертывающая обычную функцию «печать()»
, но с цветами и яркостью»»»
print(f»», **kwargs)

Мы просто используем print() внутри, но дополняем текст яркостью и цветовыми кодами, а также добавляем Style.RESET_ALL в конце, чтобы сбросить цвет и яркость по умолчанию каждый раз, когда мы используем функцию.

Мы также передаем **kwargs, чтобы мы могли использовать другие ключевые аргументы функции print(), такие как end и sep.

Теперь, когда у нас есть наша функция, давайте использовать все цвета переднего плана и напечатаем один и тот же текст разными цветами и каждый с разной яркостью:

for fore in FOREGROUND:
for brightness in BRIGHTNESS:
print_with_color(«Myrusakov!», color=fore, brightness=brightness)

Изображение

При этом черный цвет не будет виден на экране.

Теперь используем фоновые цвета:

for fore in FOREGROUND:
for back in BACKGROUND:
for brightness in BRIGHTNESS:
print_with_color(«Myrusakov», color=back+fore, brightness=brightness, end=’ ‘)
print()

Изображение

Теперь вы знаете все доступные цвета переднего плана и фона, а также значения яркости в библиотеке colorama на Python.

Создано 28.12.2021 13:58:02

  • Михаил Русаков
  • Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

    Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
    Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

    Если Вы не хотите пропустить новые материалы на сайте,
    то Вы можете подписаться на обновления: Подписаться на обновления

    Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

    Порекомендуйте эту статью друзьям:

    Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

    1. Кнопка:
      Она выглядит вот так:
    2. Текстовая ссылка:
      Она выглядит вот так: Как создать свой сайт
    3. BB-код ссылки для форумов (например, можете поставить её в подписи):

    Комментарии ( 0 ):

    Для добавления комментариев надо войти в систему.
    Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.

    Copyright © 2010-2023 Русаков Михаил Юрьевич. Все права защищены.

    Как поменять цвет текста при выводе в консоль?

    Если без пакета, то будет зависеть от конкретной ОС, так как терминалы разные.

    Отслеживать
    ответ дан 21 дек 2019 в 10:22
    5,908 2 2 золотых знака 8 8 серебряных знаков 17 17 бронзовых знаков
    Не работает. (
    21 дек 2019 в 11:10
    @merkar так установите библиотеку. pip install termcolor
    21 дек 2019 в 12:08

    import 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.15.1019

    Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

    Цветной вывод текста в 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 не будет опубликован. Обязательные поля помечены *