• termcolor:给输出的内容添加颜色


    楔子

    我们在输出内容的希望能够带上相应的颜色,我们一般会通过类似 33[ ... 这种方式来实现,但是显然比较麻烦。而有两个库:colorama和termcolor 可以帮我们更加方便地实现相应的需求,当然这两个库的底层还是通过 33[ ... 这种方式实现的,只是帮我们进行了封装,我们直接通过指定颜色的英文名即可。

    首先colorama和termcolor都可以实现,但是我个人觉得termcolor实现起来会更方便一些,所以这里介绍termcolor

    用法

    from termcolor import colored
    
    # 假设输出"satori"这个字符串
    # 不带颜色的话,直接print即可
    print("satori")
    
    # 带上颜色的话就是
    print(colored("satori", "red", "on_green"))
    

    将"输出的内容"、"字体颜色"、"背景色"传入到colored函数里面,进行print即可

    colored函数里面支持如下参数:

    • text:输出的内容
    • color:字体颜色,支持red, green, yellow, blue, magenta, cyan, white
    • on_color:背景色,支持on_red, on_green, on_yellow, on_blue, on_magenta, on_cyan, on_white
    • attrs:附加属性,支持bold, dark, underline, blink, reverse, concealed

    color、on_color、attrs默认为None,如果不传递,那么等于不添加相应的效果。

    from termcolor import colored
    
    print("satori")
    
    print(colored("satori", "red", attrs=["bold", "underline"]))
    

    除了colored的方式,还可以通过cprint

    from termcolor import cprint
    
    print("satori")
    
    cprint("satori", "red", "on_green")  # 等价于print(colored("satori", "red", "on_green"))
    

    cprint等于将print和colored进行了一个封装,看一下源码就显而易见了

    def cprint(text, color=None, on_color=None, attrs=None, **kwargs):
        """Print colorize text.
    
        It accepts arguments of print function.
        """
    
        print((colored(text, color, on_color, attrs)), **kwargs)
    

    因此想在输出的内容中带上颜色的话,那么可以使用termcolor模块。

  • 相关阅读:
    MCS-51系列单片机和MCS-52系列单片机有何异同
    51单片机指令表
    ROM、PROM、EPROM、EEPROM、Flash ROM分别指什么?
    用最简单的办法轻松区分无源晶振和有源晶振
    CE310A
    夏普sharp复印机安装视频及教导
    SHARP AR-2048D/2348D
    SHARP 加粉1
    SHARP 加粉
    SQL SERVER BOOK
  • 原文地址:https://www.cnblogs.com/traditional/p/12554053.html
Copyright © 2020-2023  润新知