網站首頁 編程語言 正文
1.引言
創建命令行程序很棒:命令行可以按照我們的設定完成相應的工作,相比GUI界面程序,無需花費數小時嘗試使 GUI 正常工作。但有時最好有一個更吸引人的程序,而僅使用普通的打印功能是無法直接實現的。
一個很好的折衷方案是使用colorama庫。這使我們可以非常輕松地為終端上輸出的字符串著色,并且改善程序的界面外觀。
閑話少說,接下來讓我們看看如何使用它吧!
2.工作原理
這個庫背后的實現原理非常簡單,它通常使用 ANSA轉義字符序列。當終端讀取這些序列之一時,它并不會輸出。當終端被指示為下一個輸出時它采用之前設定的顏色進行相應的輸出。
舉例來說,字符串\033[92m
代表顏色綠色,字符串\033[0m
被用來將終端的顏色設置為標準的默認色(通常為黑色)。樣例代碼如下:
GREEN = '\033[92m' END_COLOR = '\033[0m' print(GREEN + "Hello World" + END_COLOR) print("Hello word 2022!")
上述代碼輸出如下:
3.使用Colorama庫
現在我們明白了上述庫的工作原理,接下來我們來使用它。首先是安裝,還是使用pip直接進行安裝,命令行如下:
pip install colorama
安裝完成后,接著我們可以開始編碼了。在腳本開頭添加以下初始化代碼是一種很好的編程寫法(在windows系統中比如顯示調用init函數):
from colorama import init init()
這用于確保 Windows 命令行正確處理 ANSA字符串序列。否則,它只會打印出字符序列。
如果您使用的是其他操作系統,此時init()函數將什么事情也不做,但是建議大家仍應該將其顯式放入我們的程序中,以確保我們的程序可以在任何平臺上正常工作。
現在我們可以開始來使用這個庫了。主要分為三個子類:
Fore ,用于改變輸出文本的顏色;Style,用于改變輸出文本的亮度;Back,用于改變輸出文本的背景(即突出顯示文本)。
4.改變輸出文本顏色
接著我們可以從改變文本的顏色開始,Colorama 允許我們使用八種不同的顏色:黑色(black)、紅色(red)、綠色(green)、黃色(yellow)、藍色(blue)、洋紅色(magenta)、青色(cyan)、白色(white)。它們在 Fore 類中作為變量實現。他們的名字就是顏色的名字,全部大寫。例如:
from colorama import Fore, init init() print('Now is not colored') print(Fore.RED + 'some red text') print(Fore.GREEN + 'some green text') print(Fore.MAGENTA + 'some magenta text') print(Fore.RESET + 'Back to normal')
輸出如下:
上述代碼很容易實現,正如我們看到的,我們還使用了另一個變量RESET,這主要用于恢復文本的原始顏色。
5.改變輸出文本背景
接下來我們將介紹的類為Back
, 它實現了與Fore
類相同的九個關鍵字:BLACK、RED、GREEN、YELLOW、BLUE、MAGENTA、CYAN、WHITE、RESET。
此時在這種背景下,設置的顏色將用于更改輸出文本的背景(即突出顯示文本)。舉例如下:
from colorama import Back, init init() print('Now is not highlighted') print(Back.RED + 'some red background') print(Back.GREEN + 'some green background') print(Back.MAGENTA + 'some magenta background') print(Back.RESET + 'Back to normal')
輸出如下:
6.改變輸出文本亮度
最后,我們可以使用 Style
類來改變輸出文本的亮度。該子類含有以下三個主要的關鍵字:
BRIGHT
使得輸出文本變亮DIM
使得輸出的文本變暗(盡管它看起來與普通文本相同)NORMAL
是的輸出的文本變成正常的亮度
舉例如下:
from colorama import Style, init init() print('Normal text') print(Style.BRIGHT + 'Bright text') print(Style.NORMAL + 'Normal text')
樣例輸出如下:
此外,該類還實現了 RESET_ALL 關鍵字,用于將所有內容(亮度、顏色、背景)重置為正常值。舉例如下:
from colorama import Fore, Back, Style, init init() print(Style.BRIGHT + 'Now the text is bright') print(Fore.RED + 'Now the text is bright and red') print(Back.GREEN + 'Now the text is bright, red and with green background') print(Style.RESET_ALL + 'Now everything is back to normal')
輸出如下:
7. 總結
本文重點介紹了在Python中使用Colorama
類來改變終端輸出文字的顏色,亮度和背景,并針對每類情形都進行了舉例闡明。
原文鏈接:https://blog.csdn.net/sgzqc/article/details/122770378
相關推薦
- 2022-03-23 C語言新手初階教程之三子棋實現_C 語言
- 2023-02-02 python保留兩位小數的3種方法實例_python
- 2022-12-26 python?QT界面關閉線程池的線程跟隨退出完美解決方案_python
- 2023-07-15 es6中export和export default的區別
- 2022-05-23 c++?qt自定義搜索編輯框的實現方法_C 語言
- 2022-06-09 Entity?Framework?Core基于數據模型創建數據庫_實用技巧
- 2022-10-03 Objective-C?const常量的優雅使用方法_IOS
- 2022-11-10 利用C++實現獲取文件夾下所有文件名_C 語言
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支