Python 颜色控制colorama
2019-11-23 本文已影响0人
菩提老鹰
前置
之前在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