我使用外部庫運行,像這樣的節目的標準錯誤:如何重定向正在使用使用os.system由第三方Python庫
from some_lib import runThatProgram
infile = '/tmp/test'
outfile = '/tmp/testout'
runThatProgram(infile, outfile)
而runThatProgram是:
def runThatProgram(infile, outfile):
os.system("%s %s > %s" % ('thatProgram', infile, outfile))
問題是'thatProgram'
在STDERR上返回很多東西,我想將它重定向到一個文件,但我無法編輯runThatProgram
代碼,因爲它在第三方lib!
您應該避免使用那些爲易碎的和不安全的東西庫。 – 2011-05-24 14:13:23
你爲什麼不使用子流程?在調用'subprocess.Popen()'參數'stderr'到你想要重定向到的文件描述符時,你可以設置子進程。 – mouad 2011-05-24 14:40:16
Rosh,相信我,在這個庫上獨立於我的TODO列表上:-) – jan 2011-05-24 20:09:41