python實(shí)現(xiàn)控制臺輸出顏色
本文實(shí)例為大家分享了python實(shí)現(xiàn)控制臺輸出顏色的具體代碼,供大家參考,具體內(nèi)容如下
python控制臺輸出顏色,out()是基本方法,還封裝了一些基本顏色方法,如red(),blue(),green()等
out()方法的color參數(shù)表示顏色,bgcolor表示背景顏色,style表示樣式
其他方法的參數(shù)類似,三個(gè)參數(shù)的具體取值封裝到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 # 這里導(dǎo)入了上面寫的模塊 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())
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python自然語言處理使用spaCy庫進(jìn)行文本預(yù)處理
這篇文章主要為大家介紹了Python自然語言處理使用spaCy庫進(jìn)行文本預(yù)處理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05Python監(jiān)控服務(wù)器實(shí)用工具psutil使用解析
這篇文章主要介紹了Python監(jiān)控服務(wù)器實(shí)用工具psutil使用解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12OpenCV機(jī)器學(xué)習(xí)MeanShift算法筆記分享
這篇文章主要介紹了OpenCV機(jī)器學(xué)習(xí)MeanShift算法筆記分享,有需要的朋友可以借鑒參考下,希望可以對各位讀者的OpenCV算法學(xué)習(xí)能夠有所幫助2021-09-09