深圳网站建设解决方案,宜春代做网站,文本资料分享网站 建设,聊城seo培训利用Python控制终端打印字体的颜色和格式—操作详解#xff08;ANSI转义序列#xff09; 一、问题描述二、ANSI转义序列三、具体代码和显示效果#xff08;看懂这段代码#xff0c;以后可随心控制字体的打印格式#xff09; 欢迎学习交流#xff01; 邮箱#xff1a; z…… 利用Python控制终端打印字体的颜色和格式—操作详解ANSI转义序列 一、问题描述二、ANSI转义序列三、具体代码和显示效果看懂这段代码以后可随心控制字体的打印格式 欢迎学习交流 邮箱 z…1…6.com 网站 https://zephyrhours.github.io/ 一、问题描述
使用python编程时改变控制台或终端中输出字体的颜色和格式会显著提升代码质量快速帮助我们定位问题和锁定重要输出。但是一般情况下python控制台输出的字体默认为白色。具体如下 在控制台打印很多相同的格式文字时并不利于我们查找和定位想要的输出。
二、ANSI转义序列
下面简单讲一下ANSI转义序列这里不重复讲述概念想要了解ANSI转义序列是什么意思可自行查找。举个简单例子来说
\033[31m 是一个ANSI转义序列它告诉终端将后续文本的颜色设置为红色\033[0m是另外一个ANSI转义序列它告诉终端将后续文本的颜色重置为默认颜色
总之ANSI 转义序列是一种用于在控制台中输出格式化文本的标准它由一系列以 ESC 开头的字符组成后跟一个或多个参数和一个字母以指示需要执行的操作。常见的指令字母包括 m、H、J、K、s 和 u常见的参数包括 0-8、30-37 和 40-47。
下面给出一些简单的指令参数
指令字母操作m设置文本属性H设置光标属性J清除屏幕K清除行s保存光标位置u恢复光标位置
在参数中分号用来分隔不同的参数常见的参数包括
参数含义0关闭所有属性1设置粗体2设置弱化半亮3设置斜体4设置下划线5设置闪烁慎用7设置反显8设置消隐30-37设置前景色字体颜色40-47设置背景色
三、具体代码和显示效果看懂这段代码以后可随心控制字体的打印格式
要在Python中打印特定的字体格式或颜色控制台终端可以通过上面的ANSI转义序列来操作下面给出设置前景色、设置背景色和设置显示方法的几种演示代码和效果具体代码如下
设置输出的前景色代码也就是设置输出的显示字体代码
# 输出前景色(字体颜色)
print(-----------------------------------------------------)
print(输出前景色(字体颜色):)
print(\033[30m This text is foreground black.\033[0m)
print(\033[31m This text is foreground red.\033[0m)
print(\033[32m This text is foreground green.\033[0m)
print(\033[33m This text is foreground yellow.\033[0m)
print(\033[34m This text is foreground blue.\033[0m)
print(\033[35m This text is foreground magenta.\033[0m)
print(\033[36m This text is foreground cyan.\033[0m)
print(\033[37m This text is foreground white.\033[0m)具体效果如下
设置输出的背景色代码
# 输出背景色
print(-----------------------------------------------------)
print(输出背景色:)
print(\033[40m This text is background black.\033[0m)
print(\033[41m This text is background pink-red.\033[0m)
print(\033[42m This text is background dark-green.\033[0m)
print(\033[43m This text is background yellow-red.\033[0m)
print(\033[44m This text is background light-blue.\033[0m)
print(\033[45m This text is background pink.\033[0m)
print(\033[46m This text is background light-green.\033[0m)
print(\033[47m This text is background grey color.\033[0m)具体效果如下
设置输出的显示方式代码具体如下
# 输出显示方式
print(-----------------------------------------------------)
print( This text is default.) # 默认白色
print(\033[0m This text is default.\033[0m) # 默认值print(\033[1m This text is bold.\033[0m) # 加粗
print(\033[4m This text is underline.\033[0m) # 下划线
print(\033[5m This text is flicker.\033[0m) # 闪烁
print(\033[7m This text is reverse display.\033[0m) # 反显# 前面加上2就是非XX
print(\033[22m This text is non bold.\033[0m) # 非粗体
print(\033[24m This text is non underline.\033[0m) # 非下划线
print(\033[25m This text is non flicker.\033[0m) # 非闪烁
print(\033[7m This text is non reverse display.\033[0m) # 非反显具体效果如下
其他的组合方式可以自行探索通过组合不同的ANSI命令即可获得不同的显示效果。
参考博客
https://blog.51cto.com/u_16175460/9544346