Как задать всем x черный цвет, y зеленый, z красный, i желтый?

print("    nn  z  nn    x")
print("x   n  zzz  n   xy")
print("yx  n zzizz n  xyy")
print("yyx nzziiizzn xyy ")
print(" yyx nzzizzn xyy z")
print("z yyx nzzzn xyy zz")
print(" yyxyx nzn xyxyy z")
print("yyxzxyx n xyxzxyy ")
print("yxzzzxyx xyxzzzxyy")
print("xxxzxxxyxyxxxzxxxy")
print("\nz = red;\nx = black;\ny = green;\nn = light green;\ni = yellow;")

Ответы (2 шт):

Автор решения: Zhihar

https://stackoverflow.com/questions/287871/how-to-print-colored-text-to-the-terminal

вам надо просто произвести замену в вашем тексте так, чтобы назначить каждому символу нужный цвет

при желании (когда одинаковые символы рядом) можно немного соптимизировать код, чтобы не для каждого символа переключать цвет

→ Ссылка
Автор решения: insolor

Например, с помощью модуля colorama:

from colorama import init, Fore

text = """
    nn  z  nn    x
x   n  zzz  n   xy
yx  n zzizz n  xyy
yyx nzziiizzn xyy 
 yyx nzzizzn xyy z
z yyx nzzzn xyy zz
 yyxyx nzn xyxyy z
yyxzxyx n xyxzxyy 
yxzzzxyx xyxzzzxyy
xxxzxxxyxyxxxzxxxy"""

colors = {
    'z': Fore.RED,
    'x': Fore.BLACK,
    'y': Fore.GREEN,
    'n': Fore.LIGHTGREEN_EX,
    'i': Fore.YELLOW
}

init()

for c in text:
    print(colors.get(c, '') + c, end='')

print(Fore.WHITE)

Примерный вывод (зависит от настроек терминала):

введите сюда описание изображения

→ Ссылка