我正在尝试将共享库创建的对象的构造函数的输出重定向到/ dev / null。这种结构的副作用是印刷了许多我不需要的垃圾。 代码如下:
f = open("/dev/null", 'w')
tmpErr = sys.stderr
tmpOut = sys.stdout
sys.stderr = f
sys.stdout = f
foo = Foo(param1, param2)
sys.stderr = tmpErr
sys.stdout = tmpOut
f.close()
如果我用简单的print(例如print“hello”)或调用本地函数替换函数调用,则重定向似乎有效。 另外,使用“>&” shell中的运算符(tcsh)我设法完美地重定向所有输出。
我在这里缺少什么?