2011-06-30 20 views
22

我正在尋找一種方法來改變我的Python腳本運行時輸出的文本的顏色。基本思路是這樣的:更改shell文本顏色(Windows)

if (Data < LowerLimit): 
    print "Failed" # Output Failed as Red Text 
elif (Data > UpperLimit): 
    print "Failed" # Red Color 
else: 
    print "Passed" # Blue Color 

該腳本正在Windows機器上用於快速數據分析。

+1

重複,但鏈接的問題中的解決方案几乎沒有在Windows上工作。 –

回答

48

或者關於最好的模塊,我發現 http://pypi.python.org/pypi/colorama

+1

記得在完成時標記爲答案 –

+3

謝謝... Colorama太棒了! –

+0

是 - colorama實際適用於Windows 7命令提示符。在Windows 10之前,ANSI代碼在命令提示符下不起作用(出於某些不可思議的原因)。 Colorama可以完全透明地使用Win32命令 - 這使其工作並使其易於使用。我很高興終於找到了解決這個問題的辦法。 –

0

嘗試看看下面的鏈接:Python | change text color in shell

或者在這裏閱讀:http://bytes.com/topic/python/answers/21877-coloring-print-lines

一般解決方法是使用ANSI代碼,同時打印您的字符串。

有一種解決方案可以完全滿足您的需求。

+0

但爲什麼downvote?我的回答有什麼問題? –

+1

我已經嘗試過他們的解決方案,但是他們似乎沒有使用Windows。當被稱爲hilite(「Hello」,True,False)時,最好的答案(hilite函數)會導致'\ x1b [32mhello \ x1b [om',當打印結果爲←[32mhello←[0m]而不是以彩色打印時。此外,curses庫不在Windows平臺上。 – CyanRook

+0

對不起,如果是這樣的話,我已經用pycharm在windows下檢查過了,它完美的工作,但是它不能和python控制檯一起工作,所以請原諒和忍受我 –

1

這是非常簡單的!而不是導入奇怪的模塊python或嘗試長命令,你可以利用windows操作系統命令。

在windows中,存在用於更改命令提示符文本顏色的命令。您可以通過使用開始在Python中使用這樣的:進口OS

接下來,你需要有一個線改變文字顏色,把它是你在你的代碼需要。 使用os.system(「色4」)

您可以通過啓動CMD.EXE並輸入顏色幫助找出其他顏色。

好的部分?這就是它的全部,就是簡單的代碼行。 - 晝

+6

這改變了整個控制檯的顏色,而不僅僅是之後打印的文本。 – zvone

+0

對不起,那些傢伙。我很困,完全誤解了這個問題。 – Daymarquez

+0

它仍然是一個有效的答案極端相關的問題可能獲得標記重複這是如何更改Python中的shell文本顏色... – Ian

-3

一直在尋找到這一段時間,並沒有得到任何然而令人滿意的答案,...

1)ANSI轉義序列做工作,在終端上的Linux

2)如果你能容忍一組有限的結腸(u)的RS嘗試:

打印( 「你好」,結束= ''); print(「error」,end ='',file = sys.stderr);打印(「再見」)

在空閒「你好」和「再見」都採用了藍色和「錯誤」是紅色的。

不是太棒了,但現在夠好,而且容易!

+0

也只是在Windows上試過它 - 在空閒的「終端」 也一樣工作你需要: '導入系統' – Neil

+3

這只是IDLE着色標準輸出和stderr分別。這在普通控制檯(通常運行腳本的地方)中不會執行任何操作 –