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里大整数相乘相关技巧指南
Sep 12 Python
wxPython窗口的继承机制实例分析
Sep 28 Python
Python实现Windows上气泡提醒效果的方法
Jun 03 Python
python类装饰器用法实例
Jun 04 Python
解决pyqt中ui编译成窗体.py中文乱码的问题
Dec 23 Python
python实现简易云音乐播放器
Jan 04 Python
Python使用Django实现博客系统完整版
Sep 29 Python
用Python将mysql数据导出成json的方法
Aug 21 Python
解决python ogr shp字段写入中文乱码的问题
Dec 31 Python
python psutil监控进程实例
Dec 17 Python
python matplotlib 绘图 和 dpi对应关系详解
Mar 14 Python
anaconda安装pytorch1.7.1和torchvision0.8.2的方法(亲测可用)
Feb 01 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面向对象程序设计重载(overloading)操作详解
2019/06/13 PHP
运用Windows XP附带的Msicuu.exe、Msizap.exe来彻底卸载顽固程序
2007/04/21 Javascript
JavaScript调用后台的三种方法实例
2013/10/17 Javascript
jQuery实现图片预加载效果
2015/11/27 Javascript
jQuery基于ajax()使用serialize()提交form数据的方法
2015/12/08 Javascript
基于angularJS的表单验证指令介绍
2016/10/21 Javascript
JavaScript注入漏洞的原理及防范(详解)
2016/12/04 Javascript
动态加载css方法实现和深入解析
2017/01/18 Javascript
浅谈JavaScript中的apply/call/bind和this的使用
2017/02/26 Javascript
js使用i18n实现页面国际化的方法
2017/05/09 Javascript
Angular X中使用ngrx的方法详解(附源码)
2017/07/10 Javascript
js前端导出Excel的方法
2017/11/01 Javascript
node下使用UglifyJS压缩合并JS文件的方法
2018/03/07 Javascript
vue 过滤器filter实例详解
2018/03/14 Javascript
Vue SPA单页应用首屏优化实践
2018/06/28 Javascript
JavaScript设计模式之建造者模式实例教程
2018/07/02 Javascript
每周一练 之 数据结构与算法(Stack)
2019/04/16 Javascript
jQuery 查找元素操作实例小结
2019/10/02 jQuery
微信小程序图片自适应实现解析
2020/01/21 Javascript
vue实现登录、注册、退出、跳转等功能
2020/12/23 Vue.js
Python 2.x如何设置命令执行的超时时间实例
2017/10/19 Python
Python3.遍历某文件夹提取特定文件名的实例
2018/04/26 Python
python实现根据文件关键字进行切分为多个文件的示例
2018/12/10 Python
详解如何在Apache中运行Python WSGI应用
2019/01/02 Python
Python实现的排列组合、破解密码算法示例
2019/04/12 Python
Python图像识别+KNN求解数独的实现
2020/11/13 Python
Python爬虫之Selenium下拉框处理的实现
2020/12/04 Python
英国女性运动服品牌:Sweaty Betty
2018/11/08 全球购物
全球最大运动品牌的男装、女装和童装官方库存商:A&A Sports
2021/01/17 全球购物
师范应届毕业生自荐信
2013/11/18 职场文书
面料业务员岗位职责
2013/12/26 职场文书
车辆委托书范本
2014/10/05 职场文书
“爱眼护眼,提前预防近视”倡议书3篇
2019/10/30 职场文书
Nginx服务器如何设置url链接
2021/03/31 Servers
Vue vee-validate插件的简单使用
2021/06/22 Vue.js
浅谈MySQL表空间回收的正确姿势
2021/10/05 MySQL