如何打印子进程返回的stdout的某些部分?例如。从下面的示例中,如何打印仅“功能数量”和“谓词数量”?
command = "java -cp \"C:\mallet-2.0.7\class;C:\mallet-2.0.7\lib\mallet-deps.jar\" cc.mallet.fst.SimpleTagger --train true --model-file model train
p = Popen(command, stdout=PIPE, stderr=STDOUT, shell = True)
for line in p.stdout:
print line
>>>
Number of features in training data: 6
Number of predicates: 6
Labels: O noun non-noun
Preparing O
O->O(O) O,O
.........
答案 0 :(得分:0)
我能看到的最简单方法是将您的最后一段代码更改为:
for line in p.stdout:
if "Number of" in line:
print line
这只是数据,你只需要选择你想要(或需要)的位。