Способ не каждый раз менять цвет / стиль в колораме
Итак, я использую Colorama для Python, и я делаю текстовую RPG. Мне нужно использовать цвета по многим причинам, я думаю, в основном для пункта "редкость". Есть ли способ не сбрасывать Fore/Style каждый раз, когда я печатаю цветной текст? Я на Windows 10.
Я думаю, что пример будет
print(Fore.GREEN + "Welcome to my shop, here are my items...")
print("Generic item 1...")
Но я не хочу, чтобы вторая напечатанная строка была зеленой, БЕЗ сброса ее каждый раз.
2 ответа
С сайта пакета Колорама,
Если вы обнаружите, что неоднократно отправляете последовательности сброса, чтобы отключить смену цвета в конце каждой печати, тогда init(autoreset=True) автоматизирует это:
from colorama import init
init(autoreset=True)
print(Fore.RED + 'some red text')
print('automatically back to default color again')
После того, как вы изменили цвет вашего выходного текста, он не может вернуться к нормальному состоянию без фактического сброса его к нормальному.
Итак, в продолжение комментария MK Ultra я бы предложил что-то вроде этого;
def print_normal(string): #takes your string as input
print(Fore.WHITE+Style.RESET_ALL+string)
#prints normal color and style text to the console
Итак, в вашем примере кода;
print(Fore.GREEN + "Welcome to my shop, here are my items...") #green text
print_normal("Generic item 1...") #normal text