python常用库之colorama (python命令行界面打印怎么加颜色)

文章目录

  • python常用库之colorama (python命令行界面打印怎么加颜色)
    • 背景
    • colorama介绍
    • colorama使用
      • colorama打印红色闪烁
      • 打印颜色组合

python常用库之colorama (python命令行界面打印怎么加颜色)

背景

在Python开发项目过程中,为了方便调试代码,经常会向stdout中输出一些日志,但是大量日志,有时不好定位问题。

使用终端打印特定颜色字符串,可以突出显示关键性的信息,帮助用户更好地识别和理解输出内容。

colorama介绍

官方:https://pypi.org/project/colorama
官方:https://github.com/tartley/colorama

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

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

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

colorama模块的作用是:

  1. 在Windows平台上添加ANSI转义字符的支持,因为Windows命令行默认不支持ANSI控制码
  2. 提供了 Fore/Back/Style 等对象封装ANSI代码,使用更简单
  3. 自动设置和关闭ANSI支持,不需要自己添加控制字符
    所以colorama的主要功能是让ANSI转义字符在Windows平台也可以工作,从而实现跨平台的颜色打印。
    它不是Python标准库,需要安装后导入使用。但几乎成为了彩色打印输出的标准方式。

colorama使用

# 安装
pip install colorama# 导入使用
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)
  • Fore:用于改变输出文本的颜色;
  • Style:用于改变输出文本的亮度;
  • Back:用于改变输出文本的背景(即突出显示文本)。
  • BRIGHT:使得输出文本变亮

colorama打印红色闪烁

打印颜色组合

import colorama
from colorama import Fore, Back, Styledef 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()

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/20547.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

fastapi初使用,构建自己的api

文章目录 1、安装2、api实现2.1、 app.get("/1)2.2、app.get("/{a})2.3、app.get("/{a}{b}")2.4、函数和api分离 3、运行 原文链接:https://wangguo.site/posts/d98bb3c9.html fastapi 是一个基于 Python 的 API 构建框架,简单且易用…

LLM - DataCollatorForLanguageModeling 样本生成 by transformers

目录 一.引言 二.生成样本 By API 1.样本处理样式 2.DataCollatorForLanguageModeling 2.1 样本准备 2.2 API 生成 三.生成样本 By DIY 1.样本准备 2.data_colloator 实现 3.使用自定义 data_colloator 四.总结 一.引言 前面我们讲了 Baichuan7B 的 lora 微调步骤&a…

详解sentinel使用

目录 1.概述 2.下载安装 3.应用托管 4.流量控制 4.1.流控规则 4.2.流控模式 4.2.1.直接模式 4.2.2.关联模式 4.2.3.链路模式 4.3.流控效果 4.3.1.预热 4.3.2.排队等待 5.降级 5.1.降级规则 5.2.降级策略 5.2.1.RT 5.2.2.异常比例 5.2.3.异常数 1.概述 senti…

直播 | SDS 容灾方案,让制品数据更安全

近日,腾讯 CODING WePack 制品管理系统 V1 以及腾讯 CODING DevOps 研发效能管理平台 V7 与 XSKY 星辰天合的统一数据平台 XEDP 及天合翔宇分布式存储系统完成互相兼容认证,在数据层面满足了共同客户敏捷开发的高可用建设合规要求。 联合解决方案可以帮…

【动手学深度学习】层和块

层和块 简单介绍 块:描述单个层,由多个层组成的组件或整个模型本身。使用块进行抽象的一个好处是可以将一些块组合成更大的组件,这一过程通常是递归的 简单入门 import torch from torch import nn from torch.nn import functional as F# …

【GitHub】腾讯这一款设计神器,开源了!PAG 动效组件

作为一个资深的互联网用户,我们经常会在各种产品上看到十分酷炫的动画效果。比如,短视频中有趣的虚拟场景、直播间粉丝打榜的 “火箭”、“轮船” 等等。 如今,优质的动效不仅可以使用户更容易地理解产品功能和操作方式,减少用户…

一套完全开源,支持多租户,界面配置单点的后端框架JVS

JVS的多租户体系统 在IT系统中,“租户”(tenant)通常用于指代一种多租户架构(multi-tenancy),它是一种软件架构模式,允许多个用户或组织共享相同的应用程序或系统实例,但彼此之间的…

lwip-2.1.3自带的httpd网页服务器使用教程(一)从SD卡读取网页文件并显示

概述 本教程使用的单片机是STM32F103ZE,有线网口芯片为ENC28J60。 本教程里面的网页由于需要兼容Windows XP系统的IE8浏览器,所以采用HTML 4.01编写,不使用任何前端框架。笔者使用的网页设计软件是Adobe Dreamweaver CS3。 开发板PCB文件是公…

运维小知识(一)——centos系统安装(小白入门级)

目录 1.制作系统U盘 2.安装centos系统 3.系统配置 3.1【语言】配置​编辑 3.2【软件选择】配置 3.3【安装位置】配置 3.4【主机名、root密码、网络】配置 1.制作系统U盘 首先下载软件ventoy,制作系统U盘,买个新U盘。先在笔记本电脑安装ventoy软件&a…

产品经理学习画原型(三)

1.布尔运算的使用 合并必须选择两个及以上元件 合并后: 组合: 去除顶层:

常用API学习01(Java)

Math Math是一个帮助我们用于进行数学计算的工具类。私有化的构造方法,所有方法都是静态的。 Math类的常用方法: public static int abs(int a) 获取参数绝对值 public static double cell(double a) 向上取整 public static double floor(…

全链路Python环境迁移

全链路Python环境迁移 在当前的Python环境中,安装一些库以后,如果换了一套Python环境,难道再来一次不停的pip install?当然不是。 第一步,使用pip freeze(冻结)备份当前Python库的环境 pip f…