實現過程:
終端的字符顏色使用轉義序列控制的,是文本模式下的系統顯示功能,和具體的語言無關。
轉義序列是以ESC開頭,即用\033來表示(ESC是ASCII碼用十進制表示是27,用八進制表示就是033)
書寫格式:
開頭部分:\033[顯示方式;前景色;背景色m + 結尾部分:\033[0m
注意:開頭部分的三個參數:顯示方式、前景色、背景色是可選參數,但是必須要寫一個。
由於三個參數不同含義的數值都是唯一的沒有重復,所以參數的書寫並沒有順序,系統都能夠識別。
數值表示的參數含義:
| 前景色 | 背景色 | 顏色 |
| 30 | 40 | 黑色 |
| 31 | 41 | 紅色 |
| 32 | 42 | 綠色 |
| 33 | 43 | 黃色 |
| 34 | 44 | 藍色 |
| 35 | 45 | 紫紅色 |
| 36 | 46 | 青藍色 |
| 37 | 47 | 白色 |
顯示方式的參數含義:
| 顯示方式 | 意義 |
| 0 | 終端默認設置 |
| 1 | 亮度顯示 |
| 4 | 使用下划線 |
| 5 | 閃爍 |
| 7 | 反顯 |
| 8 | 不可見 |
實際情況如下:
#!/usr/bin/env python #字體顏色 print('\033[30m黑色字體\033[0m') print('\033[31m紅色字體\033[0m') print('\033[32m綠色字體\033[0m') print('\033[33m黃色字體\033[0m') print('\033[34m藍色字體\033[0m') print('\033[35m紫色字體\033[0m') print('\033[36m青色字體\033[0m') print('\033[37m白色字體\033[0m') print('------------分割線----------------') print('\033[40m黑色背景\033[0m') print('\033[41m紅色背景\033[0m') print('\033[42m綠色背景\033[0m') print('\033[43m黃色背景\033[0m') print('\033[44m藍色背景\033[0m') print('\033[45m紫色背景\033[0m') print('\033[46m青色背景\033[0m') print('\033[47m白色背景\033[0m')
結果:

還有一些特殊操作:
print('\033[0m默認亮度\033[0m') print('\033[1m高亮顯示\033[0m') print('\033[4m下划線\033[0m') print('\033[5m閃爍\033[0m') print('\033[7m反取\033[0m') print('\033[8m不顯示\033[0m')
執行結果:

一般都是三個參數都會設置,就像這樣:

