[python] colorama 模塊 - 改變控制檯輸出文本的顏色 原

除了使用 PyQt 這樣的圖形化開發框架外,基本上 python 程序都是跑在控制檯中的。很多時候,單純使用黑白的文字不能很好地突出我們要顯示的信息。有時候我們需要將錯誤的提示使用紅色標註,而將成功的提示設置爲綠色。這時候,基礎的控制檯顯示操作就不能很好地滿足我們了。雖然我們可以使用 ANSI 來標註輸出字體的顏色,但是這樣需要記憶它的格式,不是特別方便。

這個時候,我們就可以通過 colorama 這個第三方模塊,用簡單的語法實現字體顏色的控制。接下來就來看看它有多神奇。

1. 安裝 colorama 模塊

$ pip install colorama

如果你使用 Anaconda 這樣的環境,它就會預裝 colorama 模塊。但是如果使用的是 miniconda ,這個時候就需要安裝一下:

$ conda install colorama

2. 使用 colorama 模塊

在使用 colorama 的字體顏色模式之前,需要先使用 init() 函數進行初始化。以下就是一個簡單的實例:

from colorama import init, Fore, Back, Style
init()
print(Fore.RED + 'some red text')
print(Back.GREEN + 'and with a green background')
print(Style.BRIGHT + 'and in bright text')
print(Style.RESET_ALL)
print('back to normal now')

其中, init() 函數可以傳入一個參數: autoreset 。默認值爲 False ,如果設置爲 True ,它就會在每一次輸出語句之後自動清空格式。

from colorama import init, Fore, Back, Style
init(autoreset=True)
print(Fore.BLUE + 'some blue text')
print(Back.CYAN + 'cyan background')
print(Style.DIM + 'in dim text')
print('auto set to normal now')

Fore, Back, Style 這三個類型,分別可以設置顯示字體的顯示風格。它需要連接到待輸出字符串的前面。其中 Fore 是前景色(字體顏色), Back 是背景色, Style 可以改變字體的顯示模式,同時也可以清空字體風格。這三個屬性可以設置的參數如下:

  • Fore: BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, RESET.

  • Back: BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, RESET.

  • Style: DIM, NORMAL, BRIGHT, RESET_ALL

結語與其他文檔

只需要通過幾個參數,就可以用 colorama 模塊進行簡單的顏色控制了。其實如同 Fore.RED 這樣的模式只是保存了一個 ANSI 的編碼。官方文檔中就有比較詳細的解釋: colorama-PyPI。如果想要更深層次地自定義,其實也可以自己將 ANSI 進行一定的封裝來使用更多的顏色。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章