python标准输出变色_Python 命令行输出的颜色设置

Console上运行的python程序,有没有办法让print输出的文本可以显示不同的颜色?

这个其实跟python无关,跟具体所用console的类型有关系,不同的类型对应不同的控制码,如果是ansi终端,可以用ansi的控制码。

--------------------------------------以Linux的ansi终端为例----------------------------------

\33[0m 关闭所有属性

\33[1m 设置高亮度

\33[4m 下划线

\33[5m 闪烁

\33[7m 反显

\33[8m 消隐

\33[30m -- \33[37m 设置前景色

字颜色:30-----------37

30:黑

31:红

32:绿

33:黄

34:蓝色

35:紫色

36:深绿

37:白色

\33[40m -- \33[47m 设置背景色

字背景颜色范围:40----47

40:黑

41:深红

42:绿

43:黄色

44:蓝色

45:紫色

46:深绿

47:白色

\33[90m -- \33[97m 黑底彩色

90:黑

91:深红

92:绿

93:黄色

94:蓝色

95:紫色

96:深绿

97:白色

\33[nA 光标上移n行

\33[nB 光标下移n行

\33[nC 光标右移n行

\33[nD 光标左移n行

\33[y;xH设置光标位置

\33[2J 清屏

\33[K 清除从光标到行尾的内容

\33[s 保存光标位置

\33[u 恢复光标位置

\33[?25l 隐藏光标

\33[?25h 显示光标

在python输出信息时,例如print,只要加上对应的控制码对【\33[91m + info + \33[0m】就可以控制输出的信息颜色背景等。

简单的实例:

class Logger:

HEADER = '\033[95m'

OKBLUE = '\033[94m'

OKGREEN = '\033[92m'

WARNING = '\033[93m'

FAIL = '\033[91m'

ENDC = '\033[0m'

@staticmethod

def log_normal(info):

print Logger.OKBLUE + info + Logger.ENDC

@staticmethod

def log_high(info):

print Logger.OKGREEN + info + Logger.ENDC

@staticmethod

def log_fail(info):

print Logger.FAIL + info + Logger.ENDC

使用:

Logger.log_normal("This is a normal message!")

Logger.log_fail("This is a fail message!")

Logger.log_high("This is a high-light message!")

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值