搜索

查看: 3118|回复: 11

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

[复制链接]
发表于 2023-5-4 17:18:34 | 显示全部楼层 |阅读模式
Editor 2023-5-4 17:18:34 3118 11 看全部
目录
  • 目的
  • 主要语法
  • 代码演示 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")  

    202302240918485.png

    202302240918485.png


    多行的控制
    print("\033[31mtest")
    print("test")
    print("test")
    print("test")
    print("test")
    print("test")
    print("test")
    print("test")
    print("test\033[0m")  


    202302240918486.png

    202302240918486.png


    背景的控制
    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")  

    202302240918487.png

    202302240918487.png


    显示模式的控制
    无背景的情况下进行显示模式的控制
    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")  

    202302240918488.png

    202302240918488.png


    有背景的情况下进行显示模式的控制
    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')


    202302240918489.png

    202302240918489.png


    即使这样貌似也只能做到字体颜色和背景颜色的部分切换(将就着用吧)
    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')


    2023022409184810.png

    2023022409184810.png


    总结
    以上为个人经验,希望能给大家一个参考,也希望大家多多支持知鸟论坛
  • 回复

    使用道具 举报

    发表于 2023-6-28 20:39:43 | 显示全部楼层
    123456823 2023-6-28 20:39:43 看全部
    我看不错噢 谢谢楼主!知鸟论坛越来越好!
    回复

    使用道具 举报

    发表于 2023-6-29 17:27:09 | 显示全部楼层
    462710480 2023-6-29 17:27:09 看全部
    我看不错噢 谢谢楼主!知鸟论坛越来越好!
    回复

    使用道具 举报

    发表于 2023-6-29 19:13:13 | 显示全部楼层
    小妖花满楼满fx 2023-6-29 19:13:13 看全部
    我看不错噢 谢谢楼主!知鸟论坛越来越好!
    回复

    使用道具 举报

    发表于 2023-6-30 12:12:02 | 显示全部楼层
    向往草原403 2023-6-30 12:12:02 看全部
    这个帖子不回对不起自己!我想我是一天也不能离开知鸟论坛
    回复

    使用道具 举报

    发表于 2023-7-3 06:47:00 | 显示全部楼层
    戏做顿 2023-7-3 06:47:00 看全部
    楼主太厉害了!楼主,I*老*虎*U!我觉得知鸟论坛真是个好地方!
    回复

    使用道具 举报

    发表于 2023-7-3 07:11:13 | 显示全部楼层
    123456825 2023-7-3 07:11:13 看全部
    楼主发贴辛苦了,谢谢楼主分享!我觉得知鸟论坛是注册对了!
    回复

    使用道具 举报

    发表于 2023-7-3 12:21:35 | 显示全部楼层
    惜颜705 2023-7-3 12:21:35 看全部
    感谢楼主的无私分享!要想知鸟论坛好 就靠你我他
    回复

    使用道具 举报

    发表于 2023-7-3 22:11:05 | 显示全部楼层
    贺老师 2023-7-3 22:11:05 看全部
    楼主发贴辛苦了,谢谢楼主分享!我觉得知鸟论坛是注册对了!
    回复

    使用道具 举报

    发表于 2023-7-4 01:24:04 | 显示全部楼层
    知足常乐77 2023-7-4 01:24:04 看全部
    其实我一直觉得楼主的品味不错!呵呵!知鸟论坛太棒了!
    回复

    使用道具 举报

    • 您可能感兴趣
    点击右侧快捷回复 【请勿灌水】
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则 返回列表

    RSS订阅| SiteMap| 小黑屋| 知鸟论坛
    联系邮箱E-mail:zniao@foxmail.com
    快速回复 返回顶部 返回列表