Python3实现终端彩色打印:转义序列详解与代码示例
本文介绍如何在Python3中使用转义序列实现终端输出的彩色字符串。详细解析了\033[开头和\033[0m结尾的格式规范,涵盖显示方式、前景色及背景色的数值参数含义,并提供完整的Python代码示例,展示高亮、下划线、闪烁及多种颜色的具体应用效果。
Python终端彩色打印原理
一、实现过程
在终端中控制字符颜色依赖于转义序列,这是文本模式下系统自带的显示功能,与具体使用的编程语言无关。
转义序列以ESC字符开头,在Python字符串中通常通过\033来表示(ESC的十进制ASCII码为27,八进制表示为033)。
转义序列格式规范
其基本书写格式如下:
开头部分由\033[显示方式;前景色;背景色m构成,结尾部分由\033[0m构成。
需注意,开头部分的三个参数(显示方式、前景色、背景色)均为可选,可仅指定其中一个。由于各参数的数值含义唯一且不重复,书写顺序通常不影响系统识别,但建议遵循默认规范格式进行书写。
虽然结尾部分\033[0m可以省略,但为了代码的规范性与可读性,建议始终使用\033[***开头,并以\033[0m结尾。
颜色与显示参数详解
具体数值参数的含义如下:
显示方式参数:0(默认)、1(高亮)、22(非粗体)、4(下划线)、24(非下划线)、5(闪烁)、25(非闪烁)、7(反显)、27(非反显)。
前景色参数:30(黑色)、31(红色)、32(绿色)、33(黄色)、34(蓝色)、35(洋红)、36(青色)、37(白色)。
背景色参数:40(黑色)、41(红色)、42(绿色)、43(黄色)、44(蓝色)、45(洋红)、46(青色)、47(白色)。
Python代码实现示例
二、代码实例
print("显示方式:")
print("\033[0;37;40m\t方倍实验室\033[0m")
print("\033[1;37;40m\t方倍实验室\033[0m")
print("\033[22;37;40m\t方倍实验室\033[0m")
print("\033[4;37;40m\t方倍实验室\033[0m")
print("\033[24;37;40m\t方倍实验室\033[0m")
print("\033[5;37;40m\t方倍实验室\033[0m")
print("\033[25;37;40m\t方倍实验室\033[0m")
print("\033[7;37;40m\t方倍实验室\033[0m")
print("\033[27;37;40m\t方倍实验室\033[0m")
print("前景色:")
print("\033[0;30;40m\t方倍实验室\033[0m")
print("\033[0;31;40m\t方倍实验室\033[0m")
print("\033[0;32;40m\t方倍实验室\033[0m")
print("\033[0;33;40m\t方倍实验室\033[0m")
print("\033[0;34;40m\t方倍实验室\033[0m")
print("\033[0;35;40m\t方倍实验室\033[0m")
print("\033[0;36;40m\t方倍实验室\033[0m")
print("\033[0;37;40m\t方倍实验室\033[0m")
print("背景色:")
print("\033[0;37;40m\t方倍实验室\033[0m")
print("\033[0;37;41m\t方倍实验室\033[0m")
print("\033[0;37;42m\t方倍实验室\033[0m")
print("\033[0;37;43m\t方倍实验室\033[0m")
print("\033[0;37;44m\t方倍实验室\033[0m")
print("\033[0;37;45m\t方倍实验室\033[0m")
print("\033[0;37;46m\t方倍实验室\033[0m")
print("\033[0;37;47m\t方倍实验室\033[0m")
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













