Python終端輸出打印彩色字體的方法

一  實現過程

   終端的字符顏色是用轉義序列控制的,是文本模式下的系統顯示功能,和具體的語言無關。字體

   轉義序列是以ESC開頭,即用\033來完成(ESC的ASCII碼用十進制表示是27,用八進制表示就是033)。spa

二 書寫格式

  開頭部分\033[顯示方式;前景色;背景色m blog

  結尾部分:\033[0m     class

  完整格式: \033[顯示方式;前景色;背景色m要打印的文字\033[0m     若是有空格,空格也會打印出來終端

  注意:開頭部分的三個參數:顯示方式,前景色,背景色是可選參數,能夠只寫其中的某一個;另外因爲表示三個參數不一樣含義的數值都是惟一的沒有重複的,因此三個參數的書寫前後順序沒有固定要求,系統都能識別;可是,建議按照默認的格式規範書寫。密碼

  對於結尾部分,其實也能夠省略,可是省略後,若是打印了背景色,則整行都會有背景色(包括沒有字體的部分),故爲了書寫規範,建議\033[***開頭,\033[0m結尾。im

 

 

 

三 數值表示的參數含義:

顯示方式: 0(默認值)、1(高亮,即加粗)、4(下劃線)、7(反顯)、
前景色: 30(黑色)、31(紅色)、32(綠色)、 33(黃色)、34(藍色)、35(梅色)、36(青色)、37(白色)
背景色: 40(黑色)、41(紅色)、42(綠色)、 43(黃色)、44(藍色)、45(梅色)、46(青色)、47(白色)
filter

 

四 常見開頭格式

\033[0m      默認字體正常顯示,不高亮img

\033[32;0m      紅色字體正常顯示   語言

\033[1;32;40m  顯示方式: 高亮    字體前景色:綠色  背景色:黑色

\033[0;31;46m  顯示方式: 正常    字體前景色:紅色  背景色:青色 

五 實例:

(1)

print("\033[1;31;40m您輸入的賬號或密碼錯誤!\033[0m")   標準寫法   

print("\033[1;31;40m您輸入的賬號或密碼錯誤!")      

上方代碼的輸出格式爲:字體高亮,紅色前景,黃色背景      PS:前景色也就是字體的顏色


上面兩行代碼的結果以下:

 

  對於結尾部分,其實也能夠省略,可是省略後,若是打印了背景色,則整行都會有背景色(包括沒有字體的部分)

 

(2)

print("\033[0;31m%s\033[0m" % "輸出紅色字符")    標準寫法

print("\033[31m%s\033[0m" % "輸出紅色字符")      顯示方式爲0時,能夠省略

print("\033[31m%s" % "輸出紅色字符")

#上方代碼的輸出格式爲:字體默認,紅色前景,無背景色

結果以下:

沒有背景色時,上面3種方式都能獲得想要的效果

相關文章
相關標籤/搜索