子流程.Popen执行.sh与子进程不同。

2024-10-05 14:27:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从一个子进程运行parsey mcparseface。我在运行Popen vs call时得到了不同的结果,我想知道为什么会这样。 这很管用。在

process = subprocess.Popen("./syntaxnet/demo.sh", cwd="/home/kahless/models/syntaxnet")

这不是。在

^{pr2}$

这两种方法都在执行时不会抛出任何错误,但在运行时.call parsey没有正确完成。在使用.wait()或.communicate()与Popen时也会发生这种情况。我要做的是暂停代码的执行,直到parsey完成。不知道这是怎么回事。在

编辑。当我说parsey没有正确完成时,我的意思是我从运行演示.sh文件。以下是不同的输出。在

当一切正常时

在信息:tensorflow:已处理10个文档 信息:tensorflow:处理的文档总数:10 信息:tensorflow:num正确标记:0 信息:tensorflow:令牌总数:170 信息:tensorflow:评估所用的秒数:0.18,评估指标:0.00% 信息:tensorflow:已处理10个文档 信息:tensorflow:处理的文档总数:10 信息:tensorflow:num正确标记:10 信息:tensorflow:令牌总数:153 信息:tensorflow:评估所用的秒数:0.86,评估指标:6.54%

当他们没有的时候。在

在信息:tensorflow:已处理的文档总数:0 信息:tensorflow:已处理的文档总数:0


Tags: 文档标记信息进程tensorflowshcall指标