Colorama是一个专门用于在控制台、命令行或终端中输出彩色文本的Python库。它提供了一种简单而跨平台的方式来改变输出文本的颜色、背景色和样式。Colorama通过封装ANSI转义码来实现这些功能,并自动处理跨平台的兼容性问题。

Colorama包含三个主要的模块:ForeBackStyleFore用于设置文本的前景色(即字体颜色),Back用于设置文本的背景色,而Style则用于设置文本的样式(如加粗、变暗等)。这些模块提供了一组预定义的颜色和样式常量,可以直接在打印语句中使用。

Colorama支持的颜色包括黑色、红色、绿色、黄色、蓝色、洋红色、青色和白色。对于样式,它支持正常、加粗和变暗等选项。此外,Colorama还提供了一些重置常量,如Fore.RESETBack.RESETStyle.RESET_ALL,用于将颜色或样式重置为默认值。

下面介绍它的用法

安装

pip install colorama

导入

from colorama import Fore, Back, Style, init

初始化

在脚本的开始处调用init函数来初始化Colorama,这样它就可以在终端中正确工作

init(autoreset=True)  # 设置autoreset为True会在每次打印后自动重置颜色

使用

使用ForeBackStyle中的常量来设置你想要的文本颜色、背景色和样式,在Colorama库中,ForeBackStyle是三个用于设置文本输出格式的常量类。它们分别用于控制文本的前景色(即文字颜色)、背景色和样式。

Fore(前景色)和Back(背景色)包含以下属性:

  • BLACK

  • RED

  • GREEN

  • YELLOW

  • BLUE

  • MAGENTA

  • CYAN

  • WHITE

  • RESET:用于重置颜色到默认值

例如,使用Fore.RED可以将文本的前景色设置为红色,而Back.GREEN可以将文本的背景色设置为绿色。

Style(样式)包含以下属性:

  • DIM:使文本变暗(通常表现为降低亮度)

  • NORMAL:重置文本样式到正常状态,取消任何先前的样式修改(如变暗或加亮)

  • BRIGHT:使文本加深(通常表现为增加亮度)

  • RESET_ALL:重置所有样式和颜色属性到默认值

请注意,Style中的RESET_ALL不仅可以重置样式,实际上还会同时重置前景色和背景色到它们的默认状态。因此,如果你在使用ForeBack设置了颜色后想要一次性重置所有格式设置,可以使用Style.RESET_ALL

下面是一个使用这些属性的简单示例:

from colorama import Fore, Back, Style, init

init(autoreset=False)  # 初始化Colorama,但不自动重置颜色(这样我们可以看到RESET_ALL的效果)

print(Fore.RED + "这是红色的文本")
print(Back.GREEN + "这是绿色背景的文本")
print(Style.BRIGHT + Fore.BLUE + "这是加深的蓝色文本")
print(Style.RESET_ALL + "现在所有格式都已重置(包括颜色和样式)")

或者用f-string,这样会更加简洁:

from colorama import Fore, Back, Style, init

init(autoreset=False)  # 初始化Colorama,但不自动重置颜色(这样我们可以看到RESET_ALL的效果)

print(f"{Fore.RED}这是红色的文本")
print(f"{Back.GREEN}这是绿色背景的文本{Style.RESET_ALL}")
print(f"{Style.BRIGHT}{Fore.BLUE}这是加深的蓝色文本")
print(f"{Style.RESET_ALL}现在所有格式都已重置(包括颜色和样式)")

为了单独突出某个特别重要的词,我们可以这样:

from colorama import Fore, Back, Style, init

init(autoreset=False)  # 初始化Colorama,但不自动重置颜色(这样我们可以看到RESET_ALL的效果)

x = 1
print(f"这是{Fore.RED}红色{Style.RESET_ALL}的文本")
print(f"这是自定义变量{Fore.RED}{x}{Style.RESET_ALL}的文本")
print(f"这是自定义变量{Style.BRIGHT}{Fore.RED}{x}{Style.RESET_ALL}的加深文本")

文章作者: Vsoapmac
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 soap的会员制餐厅
python 第三方库 个人分享
喜欢就支持一下吧