如何在Python终端中打印彩色文本?
我知道这个问题在Stackoverflow上已经被提过,可以在这里找到
所以我试了joeld
的回答中的代码。
这是我在IDLE中运行的代码(我使用的是Python 2.7):
print '\033[95m'+'my text'+'\033[95m'
但是我得到的输出没有颜色变化:
[95mmy text[95m
===============================================================================
然后我也试了colorama
这个包。我是在cmd
中安装的:
python setup.py install
接着我在Aptana Studio 3中尝试了以下代码:
from colorama import *
print (Fore.GREEN + 'Green text')
print (Fore.Red + 'Red text')
结果是这样的:
[32mGreen text
Traceback (most recent call last):
File "C:\Users\My Documents\Aptana Studio 3 Workspace\Practice\test_colorama.py", line 12, in <module>
print (Fore.Red + 'Red text')
AttributeError: 'AnsiCodes' object has no attribute 'Red'
===============================================================================
所以现在我真的很困惑。这些解决方案被很多人点赞,说明应该有效,但在我这里似乎不行。
请问我该如何在终端或控制台中打印彩色文本呢?
非常感谢。
2 个回答
1
IDLE 不是一个真正的命令行工具。你应该在普通的终端中进行这些操作,而不是在 IDLE 里。
3
这里没有Red
>>> import colorama
>>> colorama.Fore.Red
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'AnsiCodes' object has no attribute 'Red'
但是,RED
是存在的:
>>> colorama.Fore.RED
'\x1b[31m'