python在linux中輸出帶顏色的文字的方法
在開發(fā)項(xiàng)目過程中,為了方便調(diào)試代碼,經(jīng)常會(huì)向stdout中輸出一些日志,默認(rèn)的這些日志就直接顯示在了終端中。而一般的應(yīng)用服務(wù)器,第三方庫,甚至服務(wù)器的一些通告也會(huì)在終端中顯示,這樣就攪亂了我們想要的信息。
我們可以通過對(duì)有用的信息設(shè)置不同顏色來達(dá)到醒目的效果,因?yàn)槲移綍r(shí)都是在linux下開發(fā),而linux終端中的顏色是用轉(zhuǎn)義序列控制的,轉(zhuǎn)義序列是以ESC開頭,可以用\033完成相同的工作(ESC的ASCII碼用十進(jìn)制表示就是27,等于用八進(jìn)制表示的33)。
書寫格式,和相關(guān)說明如下:
格式:\033[顯示方式;前景色;背景色m
說明:
前景色 背景色 顏色
---------------------------------------
30 40 黑色
31 41 紅色
32 42 綠色
33 43 黃色
34 44 藍(lán)色
35 45 紫紅色
36 46 青藍(lán)色
37 47 白色
顯示方式 意義
-------------------------
0 終端默認(rèn)設(shè)置
1 高亮顯示
4 使用下劃線
5 閃爍
7 反白顯示
8 不可見
例子:
\033[1;31;40m <!--1-高亮顯示 31-前景色紅色 40-背景色黑色-->
\033[0m <!--采用終端默認(rèn)設(shè)置,即取消顏色設(shè)置-->
下面是我在python中使用的方式:
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'
效果圖如下:

當(dāng)然這只是一種簡(jiǎn)單的實(shí)現(xiàn)方式,而且僅在linux下有效,其它方式可以使用termcolor,或者參考ipython的console實(shí)現(xiàn)(pyreadline)。
相關(guān)文章
在python中使用SQLAlchemy查詢PostgreSQL視圖的流程步驟
作為軟件開發(fā)人員,查詢 PostgreSQL 視圖是一項(xiàng)常見任務(wù),使用視圖(代表SQL 查詢輸出的虛擬表)被認(rèn)為是處理關(guān)系數(shù)據(jù)庫時(shí)的有效方法,本文介紹如何在 Python 中使用 SQLAlchemy 查詢 PostgreSQL 視圖,需要的朋友可以參考下2023-09-09
Pytorch自定義Dataset和DataLoader去除不存在和空數(shù)據(jù)的操作
這篇文章主要介紹了Pytorch自定義Dataset和DataLoader去除不存在和空數(shù)據(jù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03
django filters實(shí)現(xiàn)數(shù)據(jù)過濾的示例代碼
這篇文章主要介紹了django filters實(shí)現(xiàn)數(shù)據(jù)過濾的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05
python實(shí)現(xiàn)Flappy Bird源碼
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)Flappy Bird源碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12
Python Opencv實(shí)現(xiàn)單目標(biāo)檢測(cè)的示例代碼
這篇文章主要介紹了Python Opencv實(shí)現(xiàn)單目標(biāo)檢測(cè)的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09

