Python如何輸出帶顏色的文字方法

 咱們在使用python運維與開發的過程當中,常常須要打印顯示各類信息。海量的信息堆砌在控制檯中,就會致使各類信息都顯示在一塊兒,下降了重要信息的可讀性。這時候,若是能給重要的信息加上差別的字體顏色,那麼就會更加顯眼,增長使用者可閱讀性。 python

  之前看別人寫代碼老是出現"/033[1;31m..................../033[0m"相似出現,覺得顏色輸出必須"/033[1;31m「開頭,」 /033[0m" 結尾構成一組,其實否則。實際"/033[1;31m..................../033[0m"意思表示「....................「引號裏的內容顯示打印一種顏色,結尾若是有輸入的話顯示另一種顏色打印。運維

  例如咱們先寫一個簡單的要求用戶輸入的例子來了解一下:ide

  

info = input("Please  Introduce yourself: ")
print('\033[1;33mWe asked him to introduce himself first.He said \" %s .\"\033[3;31m' %info)
print('這行是上一行結尾的顏色輸出效果 ')
View Code

 

  效果如圖:post

  若是隻須要一種顏色咱們就能夠簡單一點:  字體

#!/usr/bin/env python
#-*- coding:utf-8 -*-
print('\033[0m這是顯示方式0')
print('\033[1m這是顯示方式1')
print('\033[4m這是顯示方式4')
print('\033[5m這是顯示方式5')
print('\033[7m這是顯示方式7')
print('\033[8m這是顯示方式8')
print('\033[30m這是前景色0')
print('\033[31m這是前景色1')
print('\033[32m這是前景色2')
print('\033[33m這是前景色3')
print('\033[34m這是前景色4')
print('\033[35m這是前景色5')
print('\033[36m這是前景色6')
print('\033[37m這是前景色7')
print('\033[40m這是背景色0')
print('\033[41m這是背景色1')
print('\033[42m這是背景色2')
print('\033[43m這是背景色3')
print('\033[44m這是背景色4')
print('\033[45m這是背景色5')
print('\033[46m這是背景色6')
print('\033[47m這是背景色7')
View Code

 

 Pytharm效果如圖:spa

  書寫格式,和相關說明以下: code

說明:
前景色         背景色           顏色
---------------------------------------
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-背景色紅色--- \033[0m #---採用終端默認設置,即缺省顏色---

*具體格式*:blog

設置顏色開始 :\033[顯示方式;前景色;背景色m 
注:';'先後的三個參數:顯示方式,前景色,背景色是可選參數,能夠只寫其中的某一個或者某兩個;因爲表示三個參數不一樣含義的數值都是惟一沒有重複的,因此三個參數的書寫前後順序沒有固定要求,系統均可識別;
建議按照默認的格式規範書寫
  
實現過程:
 終端的字符顏色是用轉義序列控制的,是文本模式下的系統顯示功能,和具體的語言無關。 轉義序列是以ESC開頭,即用\033來完成(ESC的ASCII碼用十進制表示是27,用八進制表示就是033)
  數值表示的參數含義:
 顯示方式: 0( )、1( )、22( )、4( )、24( )、 5()、25( )、7( )、27( 、8( 、28(
 前景色: 30()、31
、32 、 33 、34 、35 、36 、37(
 背景色: 40
、41 、42 、 43 、44 、45 、46 、47(
 
 實例
 
   
#!/usr/bin/env python
#-*- coding:utf-8 -*-
print('\033[1;31;40m')     #下一目標輸出背景爲黑色,顏色紅色高亮顯示 print('*' * 50)
print('\033[7;31m錯誤次數超限,用戶已被永久鎖定,請聯繫管理員!\033[1;31;40m')  #字體顏色紅色反白處理 print('*' * 50)
print('\033[0m')
 
   

 效果utf-8

 

相關文章
相關標籤/搜索