前置
之前在Linux下shell编程的时候,为了控制报错和告警等信息显示不同的颜色示警,使用终端颜色控制,例如如下所示
'\033[4;31;47m 带下划线的白色背景红色提示\033[0m'
效果如下
shell-terminal-color-control
在Python应用颜色控制的时候,开始也是用的shell条用方式,比如
print('\033[4;31;47m 带下划线的白色背景红色提示\033[0m')
后来想着自己写一套这样的公共类,又怕重复造轮子,网上找了找发现已经有线程的,那就哪来使用
安装
pip install colorama
Fore是针对字体颜色,Back是针对字体背景颜色,Style是针对字体格式
Fore: BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, RESET.
Back: BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, RESET.
Style: DIM, NORMAL, BRIGHT, RESET_ALL
demo
demo1
demo1
发现第二行开始把前面的颜色控制也集成过来了,不是我们想要的结果
demo2
demo2
发现最终添加 Style.RESET_ALL 之后虽然执行 reset_all 后面的是恢复了默认,但是之前的还是集成了。 不行
demo3
demo3
最后发现 脚本前面添加 init(autoreset=True) 可以完美解决
参考
附加
shell终端颜色控制说明,拿上面的例子说明:
结尾的 \033[0m 是恢复终端默认
开头的 \033[ 是颜色控制的开始
介于两种中间的分别代表的是 前景色、背景色和显示的方式
'\033[5;31;47m综合打印\033[0m'
前景色和背景色说明
| 前景色 | 背景色 | 颜色 |
|---|---|---|
| 30 | 40 | 黑色 |
| 31 | 41 | 红色 |
| 32 | 42 | 绿色 |
| 33 | 43 | 黃色 |
| 34 | 44 | 洋红 |
| 36 | 46 | 青色 |
| 37 | 47 | 白色 |
控制方式说明
| 显示方式 | 意义 |
|---|---|
| 0 | 终端默认设置 |
| 1 | 高亮显示 |
| 22 | 非高亮显示 |
| 4 | 使用下划线 |
| 24 | 去下划线 |
| 5 | 闪烁 |
| 25 | 去闪烁 |
| 7 | 反白显示 |
| 27 | 非反显 |
| 8 | 不可见 |
| 28 | 可见 |
Linux 下颜色控制使用可以参考
https://www.jianshu.com/p/ba1b8aded634








网友评论