我们可以用 Python 做许多令人兴奋的事情,让学习变得有趣、更愉快。其中之一是将彩色文本打印到终端。我们可以在文本中用不同的颜色来表示值。在这篇文章中我们讨论了 pythong 中的一些库可以帮助我们实现这个目标。
让我们通过以彩色文本打印结果来开始我们的多彩之旅。
使用“termcolor”的彩色文本
“termcolor”是一个 ANSI 转义序列,用于终端输出的颜色格式。 这些可让您为打印的文本添加颜色、彩色背景或装饰。这并没有做任何花哨的工作,它只是打印带有颜色和背景的文本。
安装
要使用这个包,我们首先需要使用 pip 命令安装它。
pip install termcolor |
例子:
1
2
3
4
5
6
|
from termcolor import colored, cprint print ( "Hello World!!!" , 'red' ) cprint( "Hello World!!!" , 'red' ) print (colored( "Hello World!!!" , 'light_cyan' )) print (colored( "Hello World!!!" , 'green' , attrs = [ 'underline' ])) |
- 从“ termcolor ”包中导入color和cprint
- 首先我们打印普通文本“”Hello World!!!”, ‘red’”
- 如前所述,cprint是termcolor库中的函数,用于以某种颜色打印输出。
- 彩色函数有两个参数:第一个是我们的文本,另一个是库提供的颜色
- 最后,我们提供带有绿色下划线的属性以及我们要应用它的文本。
在输出中,我们得到普通文本,其次,我们得到参数中提到的红色文本,然后,我们提供 light_cyan 颜色,最后,提供绿色下划线文本。
以下是可以使用的颜色、高光和属性。
颜色 | 红色、黑色、浅青色、绿色、品红色、白色等 |
强调 | on_black、on_red、on_green、on_white 等 |
属性 | 粗体、深色、下划线、闪烁、反转和隐藏 |
使用“colorama”的彩色文本
colorama还用于在终端中显示颜色文本。它是一个跨平台的彩色终端文本。这也用于在控制台中以彩色格式呈现文本。有一些可用的格式常量可用于彩色文本、背景颜色和各种样式。
安装
安装该包以使用其功能和方法。
pip install colorama |
例子
1
2
3
4
5
6
|
from colorama import Fore, Back, Style print (Fore.YELLOW + "Yellow Mellow" ) print (Back.CYAN + 'Yellow text with cyan background' ) print (Style.RESET_ALL) print ( 'Normal Text' ) |
在这段代码中,我们从colorama 库导入Fore、Back和Style ,代码如下:
- 使用Fore.YELLOW打印一些红色文本,这会将文本颜色变成黄色
- 然后在不重置文本颜色的情况下,以青色背景打印文本
- 然后我们使用Style.RESET_ALL属性重置所有颜色和背景
- 然后打印普通文本,不带任何颜色。
在输出中,我们可以看到带有颜色和背景的文本。还有更多可用的格式化常量。
前景色(文字颜色) | 黑色、红色、绿色、黄色、蓝色、品红色、青色、白色、重置 |
背面(突出显示) | 黑色、红色、绿色、黄色、蓝色、品红色、青色、白色、重置 |
风格 | 暗淡、正常、明亮、全部重置 |
您可以查看这个有趣的主题:Python Modules vs Python Packages
使用ANSI 的彩色文本
有一些 Python 模块特别适合显示彩色文本,ANSI 是一种用于颜色代码的无依赖性方法。ANSI 转义序列是带内信号,用于控制光标和颜色的位置、设置字体样式等等。让我们看一下如何使用 ANSI 将彩色文本打印到控制台。
例子
1
2
3
4
|
print ( "\033[0;32m Green Color\n" ) print ( "\033[0;34m Blue Color\n" ) print ( "\033[1;32;40m Bright Green \n" ) print ( "\033[0;31m Red \033[0m\n" ) |
在此代码中,我们使用 ANSI 转义序列打印颜色。
- \033[ : 转义码如 \n
- 1 : 1 为普通风格。
- 32:绿色文本颜色代码。
- 40m:黑色背景颜色。
- \033[0:重置值
在输出中,我们可以根据我们选择的代码和颜色看到彩色文本。我们使用内置的 ANSI 得到结果。
结论
在本文中,我们学习了如何控制台彩色输出。我们使用“termcolor”、“colorama”和“ANSI”来获得所需的输出。在 termcolor 和 colorama 中,我们必须导入库才能使用其功能,而 ANSI 速度快且无需安装。这些用特定文本颜色表示数据的库可能会很有帮助。根据需要,红色可以用于警告,蓝色可以用于正确输入,依此类推。
您还可以查看:Python Pretty print JSON – A Complete Guide