Python在Mac或Linux中输出彩色文字的技巧

如何让一个Python脚本输出的文字信息是彩色的?其实这个其实跟python无关的,跟具体所用console的类型有关系,不同的类型对应不同的控制码,如果是ansi终端,可以用ansi的控制码。

Mac或Linux终端中的颜色是用转义序列控制的,转义序列以ESC开头,可以用\033完成相同的工作(ESC的ASCII码用十进制表示是27,用八进制表示33),其格式为:

\033[显示方式;前景色;背景色m

显示方式、前景色、背景色至少一个存在即可,位置可随意。

前景色            背景色             颜色
 ---------------------------------------
 30                40               黑色
 31                41               红色
 32                42               绿色
 33                43               黄色
 34                44               蓝色
 35                45               紫红色
 36                46               青蓝色
 37                47               白色
显示方式            意义
 -------------------------
 0                终端默认设置
 1                高亮显示
 4                使用下划线
 5                闪烁
 7                反白显示
 8                不可见

举例:

print('\033[1;5;33;44;4mHello, World!\033[0m')

# 1-高亮 5-闪烁 33-前景色 44-背景色 4-下划线
# \033[0m   采用终端默认设置,即取消颜色设置
相关推荐:
有时候我们想要用不同色彩的文字来区分下,但是在Windows上不同于Mac或Linux,无法使用\033的方法,那怎么办呢?这里我们将对Windows下命令行输出彩色文字进行分析。 首先我们来看一段代码,品味下是怎么生成彩色的 …
软件的安装 Linux下软件的安装主要有两种不同的形式。第一种安装文件名为xxx.tar.gz;另一种安装文件名为xxx.i386.rpm。以第一种方式发行的软件多为以源码形式发送的;第二种方式则是直接以二进制形式发送的。 先普 …
Linux下我们会遇到一个常见的问题,那就是如何修复 /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory 问题,这个问题发生的根源不是安装报出问题,而是平台兼容性问题。 怎么理解,就是64位Linu …
NAT可以方便的完成这种流量穿通功能,即把外网数据通过NAT(中转设备)来穿透进内网,内网数据通过NAT(中转设备)穿透出外网。 那linux下iptables如何实现nat转发?这里将以Debian7主机下的测试为例。 1、开启IP_FORWAR …
mac并没有像win一样提供什么快捷删除方式,我们只能找到pkg安装后产生的文件,然后删除它。 方法一: mac会维护一份pkg安装历史,只要找到那个文件夹,我们就可以搞定了。如osx 10.8以上系统,pkg历史安装列表在/pri …
拿起手机扫一扫即可带走我!