• Python colorama 设置控制台、命令行输出彩色文字


    为了方便调试代码,经常会向stdout中输出一些日志,但是大量日志,有时不好定位问题。
    使用终端打印特定颜色字符串,可以突出显示关键性的信息,帮助用户更好地识别和理解输出内容。

    https://pypi.org/project/colorama/

    Colorama 是为了在命令行界面中提供简单、方便的文本着色功能而设计的,通过使用 ANSI 转义序列来实现这一目的。它广泛应用于命令行工具开发、日志记录、调试输出等场景中,以提高可读性和用户体验。

    Colorama 的主要功能:输出一种跨平台的ANSI转义序列,Terminal收到这种特殊的序列后并不直接显示ASCII字符,而是显示指定的颜色。

    在大多数常规终端(如 Windows 中的 cmd.exe,Linux/macOS 中的终端)中,控制台输出的文本颜色和样式是通过 ANSI 转义序列实现的。跨平台解决方案colorama库封装了这些 ANSI 转义序列的复杂性,提供了一个简单的接口来设置和应用文本颜色、背景色和样式。

    colorama模块的作用是:

    • 在Windows平台上添加ANSI转义字符的支持,因为Windows命令行默认不支持ANSI控制码
    • 提供了 Fore/Back/Style 等对象封装ANSI代码,使用更简单
    • 自动设置和关闭ANSI支持,不需要自己添加控制字符
    • 所以colorama的主要功能是让ANSI转义字符在Windows平台也可以工作,从而实现跨平台的颜色打印。
    • 它不是Python标准库,需要安装后导入使用。但几乎成为了彩色打印输出的标准方式
      image
      image
    # 安装
    pip install colorama
    
    # 导入使用
    # Fore:用于改变输出文本的颜色;
    # Style:用于改变输出文本的亮度;
    # Back:用于改变输出文本的背景(即突出显示文本)。
    # BRIGHT:使得输出文本变亮
    from colorama import Fore, Back, Style
    print(Fore.RED + 'some red text' + Style.RESET_ALL)
    
    print(Back.RED + Style.BRIGHT + "update xxx fail,please check it!xxx" + Style.RESET_ALL)
    
    

    打印颜色组合

    import colorama
    from colorama import Fore, Back, Style
    
    def main():
        # 初始化 colorama 模块
        colorama.init()
    
        # 日志信息
        log_message = "下发的数据: 12345"
    
        # 颜色组合示例
        color_combinations = [
            (Fore.GREEN, Back.WHITE),     # 绿色白底
            (Fore.BLUE, Back.YELLOW),     # 蓝色黄底
            (Fore.MAGENTA, Back.YELLOW),  # 紫色黄底
            (Fore.CYAN, Back.LIGHTBLACK_EX),  # 青色灰底,感觉这个效果不错
            (Fore.YELLOW, Back.RED)       # 黄色红底
        ]
    
        # 使用不同的颜色组合打印日志信息
        for foreground_color, background_color in color_combinations:
            logged_message = f"{foreground_color}{background_color}{log_message}{Style.RESET_ALL}"
            print(logged_message)
    
    if __name__ == '__main__':
        main()
    

    image

  • 相关阅读:
    NGINX_二十 nginx 监控
    TCp并发服务器
    实现一个动态规划算法,解决背包问题
    63.【c++基础篇.三个文件实现】
    IDEA
    HTML 基本开发方式,学会常用的 HTML 标签
    Python图形处理
    AWVS的简介与安装
    Spring的注解@Qualifier用法与简析
    【动手深度学习-笔记】注意力机制(一)注意力机制框架
  • 原文地址:https://www.cnblogs.com/vipsoft/p/17683875.html