我有以下函数用于给屏幕消息上色:
def error(string):
return '\033[31;1m' + string + '\033[0m'
def standout(string):
return '\033[34;1m' + string + '\033[0m'
我使用它们的方式如下:
print error('There was a problem with the program')
print "This is normal " + standout("and this stands out")
我希望能够将输出记录到文件中(除了STDOUT),但不带ANSI颜色代码,希望不必为每个print
语句添加第二个“logging”行。
原因是如果简单地使用python program.py > out
,则文件out
将包含ANSI颜色代码,如果在纯文本编辑器中打开,则看起来很糟糕。
有什么建议吗?