我有一个奇怪的问题,我无法解决。我使用(并且不时提供)一个具有彩色控制台输出的程序。在我重新安装 Windows 之前,一切都很好。现在我无法获得彩色输出。
这是用于着色的脚本。
我已经设法将问题缩小到或多或少简单的情况,但我不知道出了什么问题。
这是按预期工作的控制台提示符(字符串test
以红色打印):
Python 2.7.3 (default, Apr 10 2012, 23:24:47) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path.insert(0, r'c:\bin\SV\tea\src')
>>> from tea.console.color import cprint, Color
>>> cprint('test\n', Color.red)
test
>>>
但是当我使用相同版本的 python 运行以下脚本时,我得到输出test
但不是红色(没有颜色,只有默认控制台颜色):
import sys
sys.path.insert(0, r'c:\bin\SV\tea\src')
from tea.console.color import cprint, Color
cprint('test\n', Color.red)
- 在我重新安装系统之前,相同的设置有效。
- 我查过,交互模式下的环境变量和脚本是一样的。
- 我在标准的 Windows 命令提示符和控制台(我通常使用的程序)中尝试过这个。
- 有问题的操作系统是 Windows 8,在重新安装之前,它也用于 Windows 8。
- 具有相同设置的相同代码适用于工作计算机(Windows 7)。
- 我已经安装了 Python 2.7 和 Python 3.3(就像我以前一样)。我曾尝试通过直接调用 python 解释器 (
c:\Python27\python.exe
) 或 with来运行脚本py -2
,但它没有帮助。 - IPython 和 mercurial 会按应有的方式对输出进行着色。
有什么想法可以尝试使这项工作吗?
编辑:
也许不清楚,但我用来着色输出的脚本在有问题的链接中给出。又来了: https ://bitbucket.org/alefnula/tea/src/dc14009a19d66f92463549332a321b29c71d47b8/src/tea/console/color.py?at=default