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   采用终端默认设置,即取消颜色设置

我要评论!

想一个你喜欢的昵称。
给一个你的常用邮箱。
想和萌萌哒的TA们说点啥。
  • 这个问题产生的原因就是编码不同导致的,或是默认配置下不识别除utf-8之外的编码,既然是不支持,我们添加上不就行了。 编辑vimrc文件,mac os中vimrc位置:/usr/shared/vim/vimrc,当然我们更建议使用用户目录:~/.vimrc。 添加内容为『set fileencodi...
  • 谷歌发布了针对ARM优化的新算法,但是如果要使用 salsa20 或 chacha20 或 chacha20-ietf 算法,还是需要先安装 libsodium 。 CentOS下: yum install epel-release -y yum install libsodium -y 如果想自己...
  • NAT可以方便的完成这种流量穿通功能,即把外网数据通过NAT(中转设备)来穿透进内网,内网数据通过NAT(中转设备)穿透出外网。 那linux下iptables如何实现nat转发?这里将以Debian7主机下的测试为例。 1、开启IP_FORWARD vi /etc/sysctl.conf #在文件...
  • 将本机80端口的请求转发到8080端口 iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080 如果需要本机也可以访问,则需要配置OUTPUT链 iptables -t nat -A OUTPUT -p ...
  • 在编译php的时候,经常会遇到一些依赖的问题,比如这里曝露出的curl问题,具体的出错信息为: configure: error: Please reinstall the libcurl distribution - easy.h should be in <curl-dir>/inc...
微信扫一扫即可带走我!