我正在编写一个 python 脚本,通过进行子进程调用,在循环中执行一系列操作,如下所示:
os.system('./svm_learn -z p -t 2 trial-input model')
os.system('./svm_classify test-input model pred')
os.system('python read-svm-rank.py')
score = os.popen('python scorer.py -g gold-test -i out').readline()
当我在外壳中一个接一个地单独拨打电话时,它们工作正常。但在脚本中,它们总是会中断。我已经追踪了错误的来源,似乎输出文件在最后被截断(让我相信在没有完成之前的调用的情况下进行了调用)。
我尝试使用 subprocess.Popen ,然后使用 Popen 对象的 wait() 方法,但无济于事。脚本仍然中断。
有什么想法吗?