python实现控制台输出颜色


Posted in Python onMarch 02, 2021

本文实例为大家分享了python实现控制台输出颜色的具体代码,供大家参考,具体内容如下

python控制台输出颜色,out()是基本方法,还封装了一些基本颜色方法,如red(),blue(),green()等
out()方法的color参数表示颜色,bgcolor表示背景颜色,style表示样式
其他方法的参数类似,三个参数的具体取值封装到Color类,BGColor类,Style类中。

基本方法:

out(content, color=Color.DEFAULT, bgcolor=BGColor.DEFAULT, style=Style.DEFAULT)

red (content [, bgcolor, [style]])
green (content [, bgcolor, [style]])
blue (content [, bgcolor, [style]])
yellow (content [, bgcolor, [style]])
bold (content [, color, [bgcolor]])
underline (content [, color, [bgcolor]])
italic (content [, color, [bgcolor]])

具体代码:

from functools import partial

class Style:
 DEFAULT = 0
 BOLD= 1
 ITALIC = 3
 UNDERLINE = 4
 ANTIWHITE = 7


class Color:
 DEFAULT = 39
 BLACK = 30
 RED = 31
 GREEN = 32
 YELLOW = 33
 BLUE = 34
 PURPLE = 35
 CYAN = 36
 WHITE = 37
 LIGHTBLACK_EX = 90
 LIGHTRED_EX = 91
 LIGHTGREEN_EX = 92
 LIGHTYELLOW_EX = 93
 LIGHTBLUE_EX = 94
 LIGHTMAGENTA_EX = 95
 LIGHTCYAN_EX = 96
 LIGHTWHITE_EX = 97


class BGColor:
 DEFAULT = 49
 BLACK = 40
 RED = 41
 GREEN = 42
 YELLOW = 43
 BLUE = 44
 PURPLE = 45
 CYAN = 46
 WHITE = 47
 LIGHTBLACK_EX = 100
 LIGHTRED_EX = 101
 LIGHTGREEN_EX = 102
 LIGHTYELLOW_EX = 103
 LIGHTBLUE_EX = 104
 LIGHTMAGENTA_EX = 105
 LIGHTCYAN_EX = 106
 LIGHTWHITE_EX = 107


def out(content, color=Color.DEFAULT, bgcolor=BGColor.DEFAULT, style=Style.DEFAULT):
 print("\033[{};{};{}m{}\033[0m".format(style, color, bgcolor, content))


red = partial(out, color=Color.RED)
green = partial(out, color=Color.GREEN)
blue = partial(out, color=Color.BLUE)
yellow = partial(out, color=Color.YELLOW)
bold = partial(out, style=Style.BOLD)
underline = partial(out, style=Style.UNDERLINE)
italic = partial(out, style=Style.ITALIC)

红绿灯事件输出颜色示例:

from multiprocessing import Event, Process
import time
import random

from basicPractice import outputscreen # 这里导入了上面写的模块


def car(event: Event, i: int):
 if not event.is_set():
 outputscreen.out('car{}等待'.format(i),
    bgcolor=outputscreen.BGColor.RED)
 event.wait()
 else:
 outputscreen.out('car{}通行'.format(i),
    bgcolor=outputscreen.BGColor.GREEN)


def light(event: Event):
 while True:
 if not event.is_set():
  outputscreen.red('红灯亮了', style=outputscreen.Style.BOLD)
  time.sleep(1)
  event.set()
 else:
  outputscreen.green('绿灯亮了', style=outputscreen.Style.BOLD)
  time.sleep(3)
  event.clear()


if __name__ == '__main__':
 event = Event()
 p = Process(target=light, args=(event,))
 p.start()
 for i in range(20):
 Process(target=car, args=(event, i)).start()
 time.sleep(random.random())

python实现控制台输出颜色

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 基于Twisted框架的文件夹网络传输源码
Aug 28 Python
Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容
Feb 23 Python
python抽取指定url页面的title方法
May 11 Python
基于pip install django失败时的解决方法
Jun 12 Python
Python实现爬虫从网络上下载文档的实例代码
Jun 13 Python
Python 离线工作环境搭建的方法步骤
Jul 29 Python
pytorch 实现打印模型的参数值
Dec 30 Python
Python3 实现爬取网站下所有URL方式
Jan 16 Python
在pycharm中debug 实时查看数据操作(交互式)
Jun 09 Python
python redis存入字典序列化存储教程
Jul 16 Python
python编程的核心知识点总结
Feb 08 Python
教你使用Python pypinyin库实现汉字转拼音
May 27 Python
python 如何在测试中使用 Mock
Mar 01 #Python
python装饰器代码深入讲解
Mar 01 #Python
Pytorch如何切换 cpu和gpu的使用详解
Mar 01 #Python
python爬取股票最新数据并用excel绘制树状图的示例
Mar 01 #Python
python中openpyxl和xlsxwriter对Excel的操作方法
Mar 01 #Python
python中random模块详解
Mar 01 #Python
利用python实现汉诺塔游戏
Mar 01 #Python
You might like
php学习笔记之面向对象
2014/11/08 PHP
Yii获取当前url和域名的方法
2015/06/08 PHP
PHP Callable强制指定回调类型的方法
2016/08/30 PHP
对联广告js flash激活
2006/10/19 Javascript
json简单介绍
2008/06/10 Javascript
用jquery和json从后台获得数据集的代码
2011/11/07 Javascript
深入理解jQuery中live与bind方法的区别
2013/12/18 Javascript
jquery常用函数与方法汇总
2015/09/01 Javascript
js调出上下文菜单的实例
2015/12/17 Javascript
浅谈javascript基础之客户端事件驱动
2016/06/10 Javascript
AngularJs bootstrap详解及示例代码
2016/09/01 Javascript
ES6新特性三: Generator(生成器)函数详解
2017/04/21 Javascript
js中的数组对象排序分析
2018/12/11 Javascript
JS实现的获取银行卡号归属地及银行卡类型操作示例
2019/01/08 Javascript
Python实现自动为照片添加日期并分类的方法
2017/09/30 Python
python中ASCII码字符与int之间的转换方法
2018/07/09 Python
Python数据分析pandas模块用法实例详解
2019/11/20 Python
用python打开摄像头并把图像传回qq邮箱(Pyinstaller打包)
2020/05/17 Python
python实现最短路径的实例方法
2020/07/19 Python
基于Python的接口自动化unittest测试框架和ddt数据驱动详解
2021/01/27 Python
css3 clip实现圆环进度条的示例代码
2018/02/07 HTML / CSS
CSS3实现缺角矩形,折角矩形以及缺角边框
2019/12/20 HTML / CSS
美国网上订购鲜花:FTD
2016/09/23 全球购物
美国生日蛋糕店:Bake Me A Wish!
2017/02/08 全球购物
京东港澳售:京东直邮港澳台
2018/01/31 全球购物
Myprotein俄罗斯官网:欧洲第一运动营养品牌
2019/05/05 全球购物
什么是动态端口(Dynamic Ports)?动态端口的范围是多少?
2014/12/12 面试题
夜大自我鉴定
2013/10/31 职场文书
运动会通讯稿100字
2014/01/31 职场文书
集体备课反思
2014/02/12 职场文书
客服部班长工作责任制
2014/02/25 职场文书
员工安全承诺书
2014/05/22 职场文书
2015年业务员工作总结范文
2015/04/07 职场文书
2016年大学生社会实践心得体会
2015/10/09 职场文书
Redis特殊数据类型Geospatial地理空间
2022/06/01 Redis
box-shadow单边阴影的实现
2023/05/21 HTML / CSS