一种不必每次都重置colorama颜色/样式的方法

时间:2017-04-27 05:06:42

标签: python colors colorama

好的,我正在使用Colorama for Python,而我正在制作一个基于文本的RPG。我需要使用颜色有很多原因,主要是因为项目“稀有”我想。有没有办法不必每次打印彩色文本时重置Fore / Style?我在Windows 10上。

我想一个例子就是

print(Fore.GREEN + "Welcome to my shop, here are my items...")
print("Generic item 1...")

但我不想让第二条印刷线变成绿色,而不是每次都重置它。

2 个答案:

答案 0 :(得分:2)

来自colorama包website

  

如果您发现自己重复发送重置序列以在每次打印结束时关闭颜色更改,则init(autoreset = True)将自动执行以下操作:

from colorama import init
init(autoreset=True)
print(Fore.RED + 'some red text')
print('automatically back to default color again')

答案 1 :(得分:0)

更改输出文本的颜色后,如果没有将其重新恢复正常,则无法恢复正常。

因此,为了进一步发表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