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

yipeiwu_com7年前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中range()函数和list的比较

使用Python的人都知道range()函数和list很方便,今天再用到他的时候发现了很多以前看到过但是忘记的细节。这里记录一下range()和list。 >>>...

Python底层封装实现方法详解

这篇文章主要介绍了Python底层封装实现方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 事实上,python封装特性的实现纯...

在Django的视图(View)外使用Session的方法

从内部来看,每个session都只是一个普通的Django model(在 django.contrib.sessions.models 中定义)。每个session都由一个随机的32字...

python 获取等间隔的数组实例

可以使用numpy中的linspace函数 np.linspace(start, stop, num, endpoint, retstep, dtype) #start和stop为起...

Python isinstance判断对象类型

复制代码 代码如下:if (typeof(objA) == typeof(String)) { //TODO } 在Python中只需要使用内置的函数isinstance,使用起来非常简...