Python 给屏幕打印信息加上颜色的实现方法

yipeiwu_com6年前Python基础

语法

print('\033[显示方式;字体色;背景色m文本\033[0m')
# 三种设置都可以忽略不写,都不写则为默认输出

配置如下

# 字体 背景 颜色
# ---------------------------------------
# 30 40 黑色
# 31 41 红色
# 32 42 绿色
# 33 43 黄色
# 34 44 蓝色
# 35 45 紫红色
# 36 46 青蓝色
# 37 47 白色
#
# 显示方式
# -------------------------
# 0 终端默认设置
# 1 高亮显示
# 4 使用下划线
# 5 闪烁
# 7 反白显示
# 8 不可见

举几个例子

# 高亮显示,字体紫红色,背景白色
text = 'Hello World'
print(f'\033[1;35;47m{text}\033[0m')

# 默认显示,字体紫红色,背景白色
text = 'Hello World'
print(f'\033[35;47m{text}\033[0m')

# 默认显示,字体紫红色,背景默认
text = 'Hello World'
print(f'\033[35m{text}\033[0m')

往往我们更关注字体颜色,几个字体颜色效果如下,我用的 iTerm2 的深色背景,效果会有点偏差

如果你想看所有组合的颜色,可以查看这篇文章 Go语言在Linux环境下输出彩色字符

工具化

这个语法看起来还是很别扭的,平常使用我们可以封装起来。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author: wxnacy(wxnacy@gmail.com)
from enum import Enum
class Color(Enum):
 BLACK = 30
 RED = 31
 GREEN = 32
 YELLOW = 33
 BLUE = 34
 MAGENTA = 35
 CYAN = 36
 WHITE = 37
def print_color(text: str, fg: Color = Color.BLACK.value):
 print(f'\033[{fg}m{text}\033[0m')
# 打印红色文字
print_color('Hello World', fg = Color.RED.value)

总结

以上所述是小编给大家介绍的Python 给屏幕打印信息加上颜色的实现方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

Python OpenCV实现图片上输出中文

Python OpenCV实现图片上输出中文

OpenCV中在图片上输出中文一般需要借助FreeType库实现。FreeType库是一个完全免费(开源)的、高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件。但使用F...

对python中return和print的一些理解

前言 最近刚开始学习python,之前只有一些c的基础,也忘得差不多了,现在想边学习边总结和分享收获~看书时看了return的用法,可是后来和print混了,老是感觉可以将函数retur...

解决Python中list里的中文输出到html模板里的问题

最仅在做一个数据分析的功能时候遇到将list中的中文字符按照数组的形式输出到html模板里的js中进行处理,但是直接输出模板会按照unicode编码输出,这个问题真的让人头大。 本方法实...

Python(PyS60)实现简单语音整点报时

本文实例为大家分享了python语音整点报时的具体代码,供大家参考,具体内容如下 主要的技术特殊点在于PyS60的定时器最多只能定2147秒。在手机上直接写的。 import e...

Pytorch 数据加载与数据预处理方式

Pytorch 数据加载与数据预处理方式

数据加载分为加载torchvision.datasets中的数据集以及加载自己使用的数据集两种情况。 torchvision.datasets中的数据集 torchvision.data...