【问题标题】:How to print colorful text in Python terminal? [closed]如何在 Python 终端中打印彩色文本? [关闭]
【发布时间】:2014-03-04 09:15:09
【问题描述】:

我知道这个问题已经在 Stackoverflow here 提出过

所以我从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'

================================================ =================================

所以现在我真的很困惑。这些解决方案被投票数百次,这意味着它应该是有效的,但在我的情况下似乎不是。

我可以知道如何在终端或控制台中打印彩色文本吗?

非常感谢。

【问题讨论】:

  • 可能是RED 而不是Red
  • 我在 vanilla CPython shell 和 IPython shell 中尝试了您的第一个示例,并且两次都有效。
  • 那里也有几个终端 :) 如果您提及您使用的是哪一个,那就太好了。有些终端根本不支持颜色。

标签: python printing colors


【解决方案1】:

没有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'

【讨论】:

  • 嗨,弗拉塞特鲁。感谢你的回答。我尝试将Red 更改为RED 并且没有更多错误报告。但是,Aptana Studio 3 控制台中的文本颜色仍然是黑色。
  • @ChangeMyName, colorama packages 适用于普通终端/终端模拟器。尝试终端中的代码(不在 IDLE、Apatana、...中)
  • 我在 Apatana Studio 3 中尝试过colorama。输出为[32mGreen text,没有颜色变化。
  • @ChangeMyName,我不会重复同样的评论。 :(
【解决方案2】:

IDLE 不是一个合适的 shell。在普通终端的 Python 会话中执行此操作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-17
    • 2010-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    相关资源
    最近更新 更多