目录
  • 目的
  • 主要语法
  • 代码演示 linux系统
    • 颜色的控制
    • 多行的控制
    • 背景的控制
    • 显示模式的控制
  • 代码演示 windows系统
    • 总结

      目的

      在python开发的过程中,经常会遇到需要打印各种信息。海量的信息堆砌在终端中,就会导致信息都混在一起,降低了重要信息的可读性。

      这时候,如果能给重要的信息加上字体颜色,那么就会更加方便用户阅读了。

      当然了,控制台的展示效果有限,并不能像前段一样炫酷,只能做一些简单的设置。

      不过站在可读性的角度来看,已经好很多了。

      主要语法

      主要是通过一个固定格式的字符串进行控制

      # 代码解释
      # 颜色控制开始
      print('\033[显示方式编号;前景色编号;背景色编号m')
      # 颜色控制结束(切换回终端默认的格式)如果没有这个之后的内容都会按照上面的颜色控制开始设置的颜色进行输出
      print('\033[0m')
      
      
      #======linux======
      # 连在一起,可以实现仅对本次想要输出的内容进行颜色控制
      # 只在单个字符串内可以有效使用所以只能使用'控制字符串'+'***'的方式或者'控制字符串''***'或者'控制字符串***'的方式
      # '控制字符串','***'这种方式是无效的
      print('\033[显示方式编号;前景色编号;背景色编号m'+本次想要输出的内容+'\033[0m')
      print('\033[显示方式编号;前景色编号;背景色编号m'本次想要输出的内容'\033[0m')
      
      
      #======windows======
      # 只在单个字符串内可以有效使用所以只能使用'控制字符串'+'***'的方式或者'控制字符串''***'或者'控制字符串***'的方式
      # '控制字符串','***'这种方式是无效的
      import colorama
      from colorama import init,Fore,Back,Style
      init(autoreset=True)
      print('\033[显示方式编号;前景色编号;背景色编号;m本次想要输出的内容')
      print('\033[显示方式编号;前景色编号;背景色编号;m''本次想要输出的内容')
      # 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系统

      颜色的控制

      # 小于30 大于37 都会显示默认字体
      print("\033[30m这是黑色字体\033[0m")#不会显示
      print("\033[31m这是红色字体\033[0m")
      print("\033[32m这是绿色字体\033[0m")
      print("\033[33m这是黄色字体\033[0m")
      print("\033[34m这是蓝色字体\033[0m")
      print("\033[35m这是紫色字体\033[0m")
      print("\033[36m这是青色字体\033[0m")
      print("\033[37m这是白色字体\033[0m")
      print("\033[38m这是默认字体\033[0m")  
      

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

      多行的控制

      print("\033[31mtest")
      print("test")
      print("test")
      print("test")
      print("test")
      print("test")
      print("test")
      print("test")
      print("test\033[0m")  
      

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

      背景的控制

      print("\033[1;31;40m这是黑色背景\033[0m")
      print("\033[1;31;41m这是红色背景\033[0m")
      print("\033[1;31;42m这是绿色背景\033[0m")
      print("\033[1;31;43m这是黄色背景\033[0m")
      print("\033[1;31;44m这是蓝色背景\033[0m")
      print("\033[1;31;45m这是紫色背景\033[0m")
      print("\033[1;31;46m这是青色背景\033[0m")
      print("\033[1;31;47m这是白色背景\033[0m")
      print("\033[1;31;48m这是默认背景\033[0m")  
      

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

      显示模式的控制

      无背景的情况下进行显示模式的控制

      print("\033[0m这是默认显示方式\033[0m")
      print("\033[1m这是加粗显示方式\033[0m")
      print("\033[2m这是暗色显示方式\033[0m")
      print("\033[3m这是倾斜显示方式\033[0m")
      print("\033[4m这是下划线显示方式\033[0m")
      print("\033[5m这是闪烁显示方式\033[0m")
      print("\033[7m这是反色显示方式\033[0m")
      print("\033[8m这是不可见显示方式\033[0m")  
      

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

      有背景的情况下进行显示模式的控制

      print("\033[0;31;47m这是默认显示方式\033[0m")
      print("\033[1;31;47m这是加粗显示方式\033[0m")
      print("\033[2;31;47m这是暗色显示方式\033[0m")
      print("\033[3;31;47m这是倾斜显示方式\033[0m")
      print("\033[4;31;47m这是下划线显示方式\033[0m")
      print("\033[5;31;47m这是闪烁显示方式\033[0m")
      print("\033[7;31;47m这是反色显示方式\033[0m")
      print("\033[8;31;47m这是不可见显示方式\033[0m")  
      

      代码演示 windows系统

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

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

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

      即使这样貌似也只能做到字体颜色和背景颜色的部分切换(将就着用吧)

      import colorama
      from colorama import init,Fore,Back,Style
      init(autoreset=True)
      print('\033[1;31;47;mTEST1_char_color')
      print('\033[1;32;47;mTEST2_char_color')
      print('\033[1;33;47;mTEST3_char_color')
      print('\033[1;34;47;mTEST4_char_color')
      print('\033[1;35;47;mTEST5_char_color')
      print('\033[1;36;47;mTEST6_char_color')
      print('\033[1;37;47;mTEST7_char_color')
      print('\033[1;37;41;mTEST1_back_color')
      print('\033[1;37;42;mTEST2_back_color')
      print('\033[1;37;43;mTEST3_back_color')
      print('\033[1;37;44;mTEST4_back_color')
      print('\033[1;37;45;mTEST5_back_color')
      print('\033[1;37;46;mTEST6_back_color')
      print('\033[1;37;47;mTEST7_back_color')
      

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

      总结

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

      声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。