Python终端输出打印彩色字体的方法

一  实现过程

终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关。

   转义序列是以ESC开头,即用\033来完成(ESC的ASCII码用十进制表示是27,用八进制表示就是033)。

二 书写格式

  开头部分\033[显示方式;前景色;背景色m

结尾部分:\033[0m     

  完整格式: \033[显示方式;前景色;背景色m要打印的文字\033[0m     如果有空格,空格也会打印出来

  注意:开头部分的三个参数:显示方式,前景色,背景色是可选参数,可以只写其中的某一个;另外由于表示三个参数不同含义的数值都是唯一的没有重复的,所以三个参数的书写先后顺序没有固定要求,系统都能识别;但是,建议按照默认的格式规范书写。

对于结尾部分,其实也可以省略,但是省略后,如果打印了背景色,则整行都会有背景色(包括没有字体的部分),故为了书写规范,建议\033[***开头,\033[0m结尾。

三 数值表示的参数含义:

显示方式: 0(默认值)、1(高亮,即加粗)、4(下划线)、7(反显)、 前景色: 30(黑色)、31(红色)、32(绿色)、 33(黄色)、34(蓝色)、35(梅色)、36(青色)、37(白色) 背景色: 40(黑色)、41(红色)、42(绿色)、 43(黄色)、44(蓝色)、45(梅色)、46(青色)、47(白色)

四 常见开头格式

\033[0m      默认字体正常显示,不高亮

\033[32;0m      红色字体正常显示  

\033[1;32;40m  显示方式: 高亮    字体前景色:绿色  背景色:黑色

\033[0;31;46m  显示方式: 正常    字体前景色:红色  背景色:青色 

五 实例:

(1)

print("\033[1;31;40m您输入的帐号或密码错误!\033[0m")   标准写法   

print("\033[1;31;40m您输入的帐号或密码错误!")      

上方代码的输出格式为:字体高亮,红色前景,黄色背景      PS:前景色也就是字体的颜色

上面两行代码的结果如下:

  对于结尾部分,其实也可以省略,但是省略后,如果打印了背景色,则整行都会有背景色(包括没有字体的部分)

(2)

print("\033[0;31m%s\033[0m" % "输出红色字符")    标准写法

print("\033[31m%s\033[0m" % "输出红色字符")      显示方式为0时,可以省略

print("\033[31m%s" % "输出红色字符")

#上方代码的输出格式为:字体默认,红色前景,无背景色

结果如下:

没有背景色时,上面3种方式都能得到想要的效果

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏编程

宝宝都能学会的python编程教程3:字符串和编码

字符串 在python3中已经全面支持中文。 由于Python源代码也是一个文本文件,所以,当你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为U...

22670
来自专栏编程

Python读书笔记9

我们针对列表需要进行整体的排序,今天就和大家聊一聊列表的排序应用。 一、永久性排序 什么是永久性排序呢,之前很多方法比如针对字符串的title方法,针对列表的重...

19680
来自专栏aCloudDeveloper

python网络编程初级

网络编程的专利权应该属于Unix,各个平台(如windows、Linux等)、各门语言(C、C++、Python、Java等)所实现的符合自身特性的语法都大同小...

27350
来自专栏aCloudDeveloper

从一个集合中查找最大最小的N个元素——Python heapq 堆数据结构

Top N问题在搜索引擎、推荐系统领域应用很广, 如果用我们较为常见的语言,如C、C++、Java等,代码量至少也得五行,但是用Python的话,只用一个函数就...

267100
来自专栏人工智能

使用10几行Python代码,快速建立视觉模型识别图像

视觉 进化的作用,让人类对图像的处理非常高效。 这里,我给你展示一张照片。 ? 如果我这样问你: 你能否分辨出图片中哪个是猫,哪个是狗? 你可能立即会觉得自己遭...

52890
来自专栏企鹅号快讯

用Python代码建个数据实验室,顺利入坑比特币

作者:Patrick Triest 编译:Katherine Hou、林海、Shan LIU、高宁、Yawei 比特币市场到底是如何运作的?数字加密货币(cry...

23590
来自专栏企鹅号快讯

搭建Python环境

这节课派老师教大家搭建一个Python环境,以便于可以编写和调试Python代码。让我们走入Python的奇妙世界吧! 可以安装Python的操作系统非常多,有...

36590
来自专栏积累沉淀

Python快速学习第八天

本文内容全部出自《Python基础教程》第二版 10.1 模块 现在你已经知道如何创建和执行自己的程序(或脚本)了,也学会了怎么用import从外部模...

42760
来自专栏积累沉淀

Python快速学习第七天

魔法方法、属性和迭代器 本文内容全部出自《Python基础教程》第二版 在Python中,有的名称会在前面和后面都加上两个下划线,这种写法很特别。...

37850
来自专栏aCloudDeveloper

python基础的几个小练习题

题目: 1、写一个程序,判断2008年是否是闰年。 2、写一个程序,用于计算2008年10月1日是这一年的第几天?(2008年1月1日是这一年的第一天) 3、(...

36360

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励