在python中将文本颜色保存为文本文件?

时间:2014-04-15 20:46:41

标签: python stdout

我想知道,将stdout打印到文本文件时有没有办法保存文本的颜色?以下是一段代码:

import sys, time, shutil

sys.stdout = open('testytest.txt', 'w')
print "\033[0;32mSome text"

time.sleep(1)

#"Some text" should still be colored when reprinted
with open('testytest.txt', 'r') as testfile:
     shutil.copyfileobj(testfile, sys.stdout)

那么,再一次,当stdout被保存到文本文件时,有没有办法保存颜色?或者它已经保存了吗?

1 个答案:

答案 0 :(得分:1)

你也可以打印转义字符。

因此,如果您将打印到stdout的数据保存为:

python somescript.py > somefile

该文件也将包含转义字符。

结论是:已保存。实际上不存在修改颜色的说明。该程序只是编写一个二进制流,一些shell可视化程序将其解释为颜色命令。