此问题理解为
python调用子程序
查找可用函数为subprocess
参考链接:http://www.jb51.net/article/48086.htm
其中check_out使子程序的标准输出从程序返回
尝试bleu = subprocess.check_output(["perl multi-bleu.perl", " reference.txt < candidate.txt"])
bleu = subprocess.check_output(["perl", "multi-bleu.perl reference.txt < candidate.txt"])
都不成功
有一个回答是这样的:https://zhidao.baidu.com/question/522988454.html
其中判断perl是否在path中:使用:perl -v 返回版本则在
[zsun@gpu06 ~]$ perl -v
This is perl 5, version 16, subversion 3 (v5.16.3) built for x86_64-linux-thread-multi
(with 28 registered patches, see perl -V for more detail)
经检测已安装,也在path里 ,所以运行不成功怀疑是参数位置摆放不对。
尝试未果,于是换一种方式
commands.getoutput
http://www.jb51.net/article/48086.htm