詳解Python如何在終端打印字體顏色
簡(jiǎn)介
日常開(kāi)發(fā)中,經(jīng)常需要打印顯示各種信息。海量的信息堆砌在控制臺(tái)中,就會(huì)導(dǎo)致各種信息都顯示在一起,降低了重要信息的可讀性。這時(shí)候,如果能給重要的信息加上差異的字體顏色,那么就會(huì)更加顯眼,增加使用者可閱讀性。Colorama是一個(gè)python專門(mén)用來(lái)在控制臺(tái)、命令行輸出彩色文字的模塊,可以跨平臺(tái)使用。
字體打印的三種方式:
1、原生:推薦只處理一兩句,臨時(shí)使用的時(shí)候用原生。
2、colorama模塊:使用的地方很多的時(shí)候,推薦使用這個(gè),易讀性更高。
3、termcolor模塊:不推薦。
安裝方式
pip install colorama pip install termcolor
原生方式打?。?3[顯示方式;字體色;背景色m…[33[0m
設(shè)置環(huán)境變量
| 前景色 | 背景色 | 顏色 |
|---|---|---|
| 30 | 40 | 黑色 |
| 31 | 41 | 紅色 |
| 32 | 42 | 綠色 |
| 33 | 43 | 黃色 |
| 34 | 44 | 藍(lán)色 |
| 35 | 45 | 洋紅 |
| 36 | 46 | 青色 |
| 37 | 47 | 白色 |
顯示方式 意義
| 顯示方式 | 意義 |
|---|---|
| 0 | 終端默認(rèn)設(shè)置 |
| 1 | 高亮顯示 |
| 22 | 非高亮顯示 |
| 4 | 使用下劃線 |
| 24 | 去下劃線 |
| 5 | 閃爍 |
| 25 | 去閃爍 |
| 7 | 反白顯示 |
| 27 | 非反顯 |
| 8 | 不可見(jiàn) |
| 28 | 可見(jiàn) |
例如:
033[1;32;41m # 1-高亮顯示 32-前景色綠色 40-背景色紅色--- 33[0m # 采用終端默認(rèn)設(shè)置,即缺省顏色---
顯示顏色格式:33[顯示方式;字體色;背景色m......[33[0m
書(shū)寫(xiě)格式:
開(kāi)頭部分:33[顯示方式;前景色;背景色m + 結(jié)尾部分:33[0m
解釋:
開(kāi)頭部分的三個(gè)參數(shù):顯示方式,前景色,背景色是可選參數(shù),可以只寫(xiě)其中的某一個(gè);
由于表示三個(gè)參數(shù)不同含義的數(shù)值都是唯一的沒(méi)有重復(fù)的,所以三個(gè)參數(shù)的書(shū)寫(xiě)先后順序沒(méi)有固定要求,系統(tǒng)都能識(shí)別;
建議按照默認(rèn)的格式規(guī)范書(shū)寫(xiě)。
對(duì)于結(jié)尾部分,其實(shí)對(duì)后續(xù)輸出信息的顏色樣式定義,一般設(shè)置為系統(tǒng)默認(rèn),也可以省略,但是為了顯示和書(shū)寫(xiě)規(guī)范,建議33[***開(kāi)頭,33[0m結(jié)尾。
案例源碼
# -*- coding: utf-8 -*-
# time: 2022/10/3 10:30
# file: color.py
# 公眾號(hào): 玩轉(zhuǎn)測(cè)試開(kāi)發(fā)
import sys
from termcolor import colored, cprint
from colorama import Fore, Back, Style
def primal_print():
# 通用格式:033[1;31m + mes + 033[0m
mes1 = "我是紅色"
print("\033[1;31m" + mes1 + "\033[0m")
mes2 = "我是綠色"
print("\033[1;32m" + mes2 + "\033[0m")
# 組合的方式:如 下劃線 - 紅色字體 - 背景黑色
mes3 = "我是組合的方式"
print("\033[4;31;40m" + mes3 + "\033[0m")
def termcolor_demo():
text = colored('Hello, World!', 'red', attrs=['reverse', 'blink'])
print(text)
cprint('Hello, World!', 'green', 'on_red')
print_red_on_cyan = lambda x: cprint(x, 'red', 'on_cyan')
print_red_on_cyan('Hello, World!')
print_red_on_cyan('Hello, Universe!')
for i in range(3):
cprint(str(i), 'magenta', end=' ')
print()
def color_demo():
# 字體顏色
print(Fore.RED + "甲是紅色")
print(Fore.GREEN + "乙是綠色")
print(Fore.BLUE + "丙是藍(lán)色")
# 重置設(shè)置,還原默認(rèn)設(shè)置
print(Style.RESET_ALL)
# 字體背景色
print(Back.RED + "A的背景色為紅色")
print(Back.GREEN + "B的背景色為綠色")
print(Back.BLUE + "C的背景色為藍(lán)色")
# 重置設(shè)置,還原默認(rèn)設(shè)置
print(Style.RESET_ALL)
# 字體加粗
print(Style.BRIGHT + "字體加粗")
# 組合
print(Fore.RED + Back.GREEN + Style.BRIGHT + "綠底紅字加粗")
# 重置設(shè)置,還原默認(rèn)設(shè)置
print(Style.RESET_ALL + "普通字體")
if __name__ == '__main__':
primal_print()
print("*" * 80)
termcolor_demo()
print("*" * 80)
color_demo()
執(zhí)行結(jié)果:

本質(zhì)上colorama和termcolor只是對(duì)源生的封裝。
即:python打印終端字體格式,只處理一兩句,臨時(shí)使用的時(shí)候用源生,使用的地方很多的時(shí)候,推薦使用這個(gè)colorama模塊,易讀性更高。
以上就是詳解Python如何在終端打印字體顏色的詳細(xì)內(nèi)容,更多關(guān)于Python終端打印字體顏色的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python編寫(xiě)單元測(cè)試代碼實(shí)例
這篇文章主要介紹了Python編寫(xiě)單元測(cè)試代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09
使用Python3中的gettext模塊翻譯Python源碼以支持多語(yǔ)言
這篇文章主要介紹了使用Python3中的gettext模塊翻譯Python源碼以支持多語(yǔ)言,其中翻譯Python源碼只是作為示例以展示gettext的功能和用法,需要的朋友可以參考下2015-03-03
pygame.display.flip()和pygame.display.update()的區(qū)別及說(shuō)明
這篇文章主要介紹了pygame.display.flip()和pygame.display.update()的區(qū)別及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03
Python自動(dòng)化測(cè)試之異常處理機(jī)制實(shí)例詳解
為了保持自動(dòng)化測(cè)試用例的健壯性,異常的捕獲及處理,日志的記錄對(duì)掌握自動(dòng)化測(cè)試執(zhí)行情況尤為重要,下面這篇文章主要給大家介紹了關(guān)于Python自動(dòng)化測(cè)試之異常處理機(jī)制的相關(guān)資料,需要的朋友可以參考下2022-06-06
Python如何自動(dòng)生成環(huán)境依賴包requirements
這篇文章主要介紹了Python如何自動(dòng)生成環(huán)境依賴包requirements問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-04-04
python 系統(tǒng)調(diào)用的實(shí)例詳解
這篇文章主要介紹了python 系統(tǒng)調(diào)用的實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-07-07
Python基于checksum計(jì)算文件是否相同的方法
這篇文章主要介紹了Python基于checksum計(jì)算文件是否相同的方法,涉及Python針對(duì)二進(jìn)制文件的讀取與判定技巧,需要的朋友可以參考下2015-07-07
Python GUI自動(dòng)化實(shí)現(xiàn)繞過(guò)驗(yàn)證碼登錄
這篇文章主要介紹了python GUI自動(dòng)化實(shí)現(xiàn)繞過(guò)驗(yàn)證碼登錄,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-01-01
關(guān)于python爬蟲(chóng)模塊urllib庫(kù)詳解
這篇文章主要介紹了關(guān)于python爬蟲(chóng)模塊urllib庫(kù)詳解,學(xué)習(xí)爬蟲(chóng),最初的操作便是模擬瀏覽器向服務(wù)端發(fā)出請(qǐng)求,這里我們就學(xué)習(xí)使用urlib庫(kù)的用法,需要的朋友可以參考下2023-07-07
Pytorch復(fù)現(xiàn)擴(kuò)散模型的示例詳解
這篇文章主要為大家詳細(xì)介紹了如何利用Pytorch復(fù)現(xiàn)擴(kuò)散模型,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的可以跟隨小編一起了解一下2023-04-04

