Python静默调用函数
Published:
在使用python
的某些库时,特别是 Github 上某些项目,有些函数会有一些状态的输出。当我们批处理数据执行函数时,有时候并不需要输出。下面分享一种,可以静默调用函数的方法。
例如使用cocoAPI
,Evaluate的时候,会有一些输出。
>>> cocoEval.evaluate()
>>> cocoEval.accumulate()
Running per image evaluation...
Evaluate annotation type *keypoints*
DONE (t=0.02s).
Accumulating evaluation results...
DONE (t=0.00s).
静默输出的做法,就是替换输出流,示例如下
class NullWriter(object):
def write(self, arg):
pass
def test():
print("This is a print test")
nullwrite = NullWriter()
oldstdout = sys.stdout
sys.stdout = nullwrite # disable output
try:
test()
finally:
sys.stdout = oldstdout # enable output