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数组的处理代码
Jan 04 Python
Python break语句详解
Mar 11 Python
python清理子进程机制剖析
Nov 23 Python
Python字符串格式化%s%d%f详解
Feb 02 Python
Python数据分析之双色球统计单个红和蓝球哪个比例高的方法
Feb 03 Python
Python OpenCV利用笔记本摄像头实现人脸检测
Aug 20 Python
对Python3之方法的覆盖与super函数详解
Jun 26 Python
Django框架中序列化和反序列化的例子
Aug 06 Python
django 多对多表的创建和插入代码实现
Sep 09 Python
关于Pytorch MaxUnpool2d中size操作方式
Jan 03 Python
python里glob模块知识点总结
Jan 05 Python
Python使用sql语句对mysql数据库多条件模糊查询的思路详解
Apr 12 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的一些小问题
2010/07/03 PHP
PHP实现图片自动清理的方法
2015/07/08 PHP
Zend Framework路由器用法实例详解
2016/12/11 PHP
调试php程序的简单步骤
2019/10/04 PHP
关于IFRAME 自适应高度的研究
2006/07/20 Javascript
Javascript var变量隐式声明方法
2009/10/19 Javascript
Json和Jsonp理论实例代码详解
2013/11/15 Javascript
js获取ajax返回值代码
2014/04/30 Javascript
jquery UI Datepicker时间控件的使用方法(终结版)
2015/11/07 Javascript
jQuery实现本地预览上传图片功能
2016/01/08 Javascript
Javascript中的神器——Promise
2017/02/08 Javascript
Vue 2.X的状态管理vuex记录详解
2017/03/23 Javascript
Bootstrap 响应式实用工具实例详解
2017/03/29 Javascript
详解AngularJS 过滤器的使用
2018/06/02 Javascript
修改vue源码实现动态路由缓存的方法
2020/01/21 Javascript
Vue + Node.js + MongoDB图片上传组件实现图片预览和删除功能详解
2020/04/29 Javascript
vc6编写python扩展的方法分享
2014/01/17 Python
Python实现简单登录验证
2016/04/13 Python
在python的类中动态添加属性与生成对象
2016/09/17 Python
EM算法的python实现的方法步骤
2018/01/02 Python
Python使用logging模块实现打印log到指定文件的方法
2018/09/05 Python
使用python根据端口号关闭进程的方法
2018/11/06 Python
python对csv文件追加写入列的方法
2019/08/01 Python
Python使用百度翻译开发平台实现英文翻译为中文功能示例
2019/08/08 Python
Django框架创建项目的方法入门教程
2019/11/04 Python
Python使用py2neo操作图数据库neo4j的方法详解
2020/01/13 Python
Pytorch 实现计算分类器准确率(总分类及子分类)
2020/01/18 Python
Kent & Curwen:与大卫·贝克汉姆合作
2017/06/13 全球购物
英国第一家领先的在线处方眼镜零售商:Glasses Direct
2018/02/23 全球购物
意大利单身交友网站:Meetic
2020/07/12 全球购物
C++:memset ,memcpy和strcpy的根本区别
2013/04/27 面试题
计算机专业自荐信
2013/10/14 职场文书
行政主管岗位职责
2015/02/03 职场文书
财务人员个人工作总结
2015/02/27 职场文书
个人党性锻炼总结
2015/03/05 职场文书
Python selenium模拟网页点击爬虫交管12123违章数据
2021/05/26 Python