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

本質(zhì)上colorama和termcolor只是對源生的封裝。
即:python打印終端字體格式,只處理一兩句,臨時使用的時候用源生,使用的地方很多的時候,推薦使用這個colorama模塊,易讀性更高。
以上就是詳解Python如何在終端打印字體顏色的詳細內(nèi)容,更多關于Python終端打印字體顏色的資料請關注腳本之家其它相關文章!
相關文章
使用Python3中的gettext模塊翻譯Python源碼以支持多語言
這篇文章主要介紹了使用Python3中的gettext模塊翻譯Python源碼以支持多語言,其中翻譯Python源碼只是作為示例以展示gettext的功能和用法,需要的朋友可以參考下2015-03-03
pygame.display.flip()和pygame.display.update()的區(qū)別及說明
這篇文章主要介紹了pygame.display.flip()和pygame.display.update()的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-03-03
Python如何自動生成環(huán)境依賴包requirements
這篇文章主要介紹了Python如何自動生成環(huán)境依賴包requirements問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-04-04

