Причина, по которой название цвета печатается дважды, хорошо описана в комментарии Патрика к вопросу.
Is their a way to access all the Fore Color property so they actualy work as in
Согласно: https://pypi.org/project/colorama/
Вы можете напечатать цветную строку, используя другие способы, кроме, например, print(Fore.RED + 'some red text')
Вы можете использовать функцию coloured из модуля termcolor
, который принимает строку и цвет для раскрашивания эту строку. Но не все цвета Fore
поддерживаются, поэтому вы можете сделать следующее:
from colorama import Fore
from colorama import init as colorama_init
from termcolor import colored
colorama_init(autoreset=True)
colors = [x for x in dir(Fore) if x[0] != "_"]
colors = [i for i in colors if i not in ["BLACK", "RESET"] and "LIGHT" not in i]
for color in colors:
print(colored(color, color.lower()))
Надеюсь, это ответило на ваш вопрос.
EDIT:
Я читал больше о Fore
элементов, и я обнаружил, что вы можете получить словарь, содержащий каждый цвет как ключи, а его код как значения, поэтому вы можете сделать следующее, чтобы включить все цвета в Fore
:
from colorama import Fore
from colorama import init as colorama_init
colorama_init(autoreset=True)
colors = dict(Fore.__dict__.items())
for color in colors.keys():
print(colors[color] + f"{color}")