python實現(xiàn)控制臺輸出顏色
本文實例為大家分享了python實現(xiàn)控制臺輸出顏色的具體代碼,供大家參考,具體內(nèi)容如下
python控制臺輸出顏色,out()是基本方法,還封裝了一些基本顏色方法,如red(),blue(),green()等
out()方法的color參數(shù)表示顏色,bgcolor表示背景顏色,style表示樣式
其他方法的參數(shù)類似,三個參數(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 # 這里導入了上面寫的模塊
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)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python中使用pymysql連接MySQL數(shù)據(jù)庫進行數(shù)據(jù)查詢
在當今數(shù)字化時代,數(shù)據(jù)的重要性不言而喻,而數(shù)據(jù)庫作為數(shù)據(jù)存儲與管理的核心工具,在各類應用系統(tǒng)中扮演著關(guān)鍵角色,Python 作為一種廣泛使用的編程語言,提供了多種與數(shù)據(jù)庫交互的方式,其中 pymysql 庫是連接 MySQL 數(shù)據(jù)庫的常用選擇之一,需要的朋友可以參考下2025-01-01
使用PyTorch實現(xiàn)手寫數(shù)字識別功能
在人工智能的世界里,計算機視覺是最具魅力的領域之一,通過PyTorch這一強大的深度學習框架,我們將在經(jīng)典的MNIST數(shù)據(jù)集上,見證一個神經(jīng)網(wǎng)絡從零開始學會識別數(shù)字的全過程,本文給大家介紹了如何使用PyTorch實現(xiàn)手寫數(shù)字識別,需要的朋友可以參考下2025-03-03
Python enumerate函數(shù)功能與用法示例
這篇文章主要介紹了Python enumerate函數(shù)功能與用法,結(jié)合實例形式分析了enumerate函數(shù)針對列表、字符串遍歷操作相關(guān)使用技巧,需要的朋友可以參考下2019-03-03

