-1

我刚刚在 windows8.1 上为 python 2.7 安装了 termcolor。当我尝试打印彩色文本时,我得到了奇怪的输出。

from termcolor import colored
print colored('Hello world','red')

结果如下:

[31mHello world[0m

帮助摆脱这个问题。谢谢,提前

4

2 回答 2

1

请参阅此stackOverflow帖子。

它基本上说,为了让转义序列在 Windows 中工作,您需要先运行 os.system('color')。

例如:

import termcolor
import os
os.system('color')
print(termcolor.colored("Stack Overflow", "green")
于 2019-07-26T13:58:54.763 回答
0

termcolor或者colored在 python 2.7 下工作得很好,我无法在我的 Mac/Linux 上复制你的错误。

如果您查看 的源代码colored,它基本上以以下格式打印字符串

\033[%dm%s\033[0m' % (COLORS[color], text)

不知何故,您的终端环境无法识别 unix/linux 系统中用于设置 xterm 前景色的非打印转义序列。

于 2018-04-20T01:22:47.373 回答