python設置字體顏色


在開發項目過程中,為了方便調試代碼,經常會向stdout中輸出一些日志,默認的這些日志就直接顯示在了終端中。而一般的應用服務器,第三方庫,甚至服務器的一些通告也會在終端中顯示,這樣就攪亂了我們想要的信息。

我們可以通過對有用的信息設置不同顏色來達到醒目的效果,因為我平時都是在linux下開發,而linux終端中的顏色是用轉義序列控制的,轉義序列是以ESC開頭,可以用\033完成相同的工作(ESC的ASCII碼用十進制表示就是27,等於用八進制表示的33)。

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

 

復制代碼代碼如下:

格式:\033[顯示方式;前景色;背景色m
 
說明:
前景色            背景色           顏色
---------------------------------------
30                40              黑色
31                41              紅色
32                42              綠色
33                43              黃色
34                44              藍色
35                45              紫紅色
36                46              青藍色
37                47              白色
顯示方式           意義
-------------------------
0                終端默認設置
1                高亮顯示
4                使用下划線
5                閃爍
7                反白顯示
8                不可見
 
例子:
\033[1;31;40m    <!--1-高亮顯示 31-前景色紅色  40-背景色黑色-->
\033[0m          <!--采用終端默認設置,即取消顏色設置-->   

 


下面是我在python中使用的方式:

復制代碼代碼如下:
print '\033[1;31;40m'
print '*' * 50
print '*HOST:\t', request.META.get('REMOTE_ADDR')
print '*URI:\t', request.path
print '*ARGS:\t', QueryDict(request.body)
print '*TIME:\t', time.time() - request.start_time
print '*' * 50
print '\033[0m'

 

效果圖如下:


當然這只是一種簡單的實現方式,而且僅在linux下有效,其它方式可以使用termcolor,或者參考ipython的console實現(pyreadline)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM