翼度科技»论坛 编程开发 python 查看内容

python调试过程中多颜色输出方式

8

主题

8

帖子

24

积分

新手上路

Rank: 1

积分
24
目的

在python开发的过程中,经常会遇到需要打印各种信息。海量的信息堆砌在终端中,就会导致信息都混在一起,降低了重要信息的可读性。
这时候,如果能给重要的信息加上字体颜色,那么就会更加方便用户阅读了。
当然了,控制台的展示效果有限,并不能像前段一样炫酷,只能做一些简单的设置。
不过站在可读性的角度来看,已经好很多了。

主要语法

主要是通过一个固定格式的字符串进行控制
  1. # 代码解释
  2. # 颜色控制开始
  3. print('\033[显示方式编号;前景色编号;背景色编号m')
  4. # 颜色控制结束(切换回终端默认的格式)如果没有这个之后的内容都会按照上面的颜色控制开始设置的颜色进行输出
  5. print('\033[0m')


  6. #======linux======
  7. # 连在一起,可以实现仅对本次想要输出的内容进行颜色控制
  8. # 只在单个字符串内可以有效使用所以只能使用'控制字符串'+'***'的方式或者'控制字符串''***'或者'控制字符串***'的方式
  9. # '控制字符串','***'这种方式是无效的
  10. print('\033[显示方式编号;前景色编号;背景色编号m'+本次想要输出的内容+'\033[0m')
  11. print('\033[显示方式编号;前景色编号;背景色编号m'本次想要输出的内容'\033[0m')


  12. #======windows======
  13. # 只在单个字符串内可以有效使用所以只能使用'控制字符串'+'***'的方式或者'控制字符串''***'或者'控制字符串***'的方式
  14. # '控制字符串','***'这种方式是无效的
  15. import colorama
  16. from colorama import init,Fore,Back,Style
  17. init(autoreset=True)
  18. print('\033[显示方式编号;前景色编号;背景色编号;m本次想要输出的内容')
  19. print('\033[显示方式编号;前景色编号;背景色编号;m''本次想要输出的内容')
  20. # windows下不需要结束回到默认输出模式  下一行自动会回复
复制代码
前景色颜色设置前景色编号黑色30红色31绿色32黃色33蓝色34紫红色35青蓝色36白色37背景色颜色设置背景色编号黑色40红色41绿色42黃色43蓝色44紫红色45青蓝色46白色47显示方式显示方式编号终端默认设置0加粗显示1暗色显示2倾斜3使用下划线4闪烁(好像看不出来他闪烁)5反色显示(交换前后景)7不可见8
代码演示 linux系统


颜色的控制
  1. # 小于30 大于37 都会显示默认字体
  2. print("\033[30m这是黑色字体\033[0m")#不会显示
  3. print("\033[31m这是红色字体\033[0m")
  4. print("\033[32m这是绿色字体\033[0m")
  5. print("\033[33m这是黄色字体\033[0m")
  6. print("\033[34m这是蓝色字体\033[0m")
  7. print("\033[35m这是紫色字体\033[0m")
  8. print("\033[36m这是青色字体\033[0m")
  9. print("\033[37m这是白色字体\033[0m")
  10. print("\033[38m这是默认字体\033[0m")  
复制代码


多行的控制
  1. print("\033[31mtest")
  2. print("test")
  3. print("test")
  4. print("test")
  5. print("test")
  6. print("test")
  7. print("test")
  8. print("test")
  9. print("test\033[0m")  
复制代码


背景的控制
  1. print("\033[1;31;40m这是黑色背景\033[0m")
  2. print("\033[1;31;41m这是红色背景\033[0m")
  3. print("\033[1;31;42m这是绿色背景\033[0m")
  4. print("\033[1;31;43m这是黄色背景\033[0m")
  5. print("\033[1;31;44m这是蓝色背景\033[0m")
  6. print("\033[1;31;45m这是紫色背景\033[0m")
  7. print("\033[1;31;46m这是青色背景\033[0m")
  8. print("\033[1;31;47m这是白色背景\033[0m")
  9. print("\033[1;31;48m这是默认背景\033[0m")  
复制代码


显示模式的控制

无背景的情况下进行显示模式的控制
  1. print("\033[0m这是默认显示方式\033[0m")
  2. print("\033[1m这是加粗显示方式\033[0m")
  3. print("\033[2m这是暗色显示方式\033[0m")
  4. print("\033[3m这是倾斜显示方式\033[0m")
  5. print("\033[4m这是下划线显示方式\033[0m")
  6. print("\033[5m这是闪烁显示方式\033[0m")
  7. print("\033[7m这是反色显示方式\033[0m")
  8. print("\033[8m这是不可见显示方式\033[0m")  
复制代码

有背景的情况下进行显示模式的控制
  1. print("\033[0;31;47m这是默认显示方式\033[0m")
  2. print("\033[1;31;47m这是加粗显示方式\033[0m")
  3. print("\033[2;31;47m这是暗色显示方式\033[0m")
  4. print("\033[3;31;47m这是倾斜显示方式\033[0m")
  5. print("\033[4;31;47m这是下划线显示方式\033[0m")
  6. print("\033[5;31;47m这是闪烁显示方式\033[0m")
  7. print("\033[7;31;47m这是反色显示方式\033[0m")
  8. print("\033[8;31;47m这是不可见显示方式\033[0m")  
复制代码
代码演示 windows系统

windows的控制台略有不同,需要更改一点点细节

  • 首先好像它只控制一行(见TEST1,TEST2),所以可以不用结尾
  • 需要加一个头文件的配置
  • 不是每种颜色都能显示出来,大家可以试试(我这里前景色都用红色,背景色都用白色来测试)
  • 貌似颜色调控是好用的可能python在windows的包和linux的包不一样吧
  • 输入控制阶段背景色和m间需要加上分号
  1. import colorama
  2. from colorama import init,Fore,Back,Style
  3. init(autoreset=True)
  4. print('TESTBASE')
  5. print('\033[0;30;47;m'+ 'TEST1')
  6. print('TEST2')
  7. print('\033[1;30;47;m'+ 'TEST3')
  8. print('\033[2;30;47;m'+ 'TEST4')
  9. print('\033[4;30;47;m'+ 'TEST5')
  10. print('\033[5;30;47;m'+ 'TEST6')
  11. print('\033[7;30;47;m'+ 'TEST7')
  12. print('\033[8;30;47;m'+ 'TEST8')
复制代码

即使这样貌似也只能做到字体颜色和背景颜色的部分切换(将就着用吧)
  1. import colorama
  2. from colorama import init,Fore,Back,Style
  3. init(autoreset=True)
  4. print('\033[1;31;47;mTEST1_char_color')
  5. print('\033[1;32;47;mTEST2_char_color')
  6. print('\033[1;33;47;mTEST3_char_color')
  7. print('\033[1;34;47;mTEST4_char_color')
  8. print('\033[1;35;47;mTEST5_char_color')
  9. print('\033[1;36;47;mTEST6_char_color')
  10. print('\033[1;37;47;mTEST7_char_color')
  11. print('\033[1;37;41;mTEST1_back_color')
  12. print('\033[1;37;42;mTEST2_back_color')
  13. print('\033[1;37;43;mTEST3_back_color')
  14. print('\033[1;37;44;mTEST4_back_color')
  15. print('\033[1;37;45;mTEST5_back_color')
  16. print('\033[1;37;46;mTEST6_back_color')
  17. print('\033[1;37;47;mTEST7_back_color')
复制代码


总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

来源:https://www.jb51.net/article/276308.htm
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具