在Pyhton中用popen方法调用nodejs执行结果
一、为什么要用popen?
在不安装第三方js执行库的情况下,直接用Python原生os或subprocess库来执行js代码不失为一种比较便捷的方法,尤其是js文件比较大的时,直接以字符串形式写在Python代码里通过其他库(execjs等)来执行会显得代码异常臃肿,而且不存在第三方库因为无法正确编译js文件导致执行报错的问题,总之使用popen
方法时,只要js代码在nodejs环境里能正常运行,最后用Python调用其结果时基本不会出现异常报错。
二、使用方法
以一个简单的求和运算函数为例,展示如何通过os.popen
或subprocess.Popen
方法获取js代码执行输出结果。
方法一:os.popen简易传参
1、js文件编辑
function add(a, b) {
return a + b
}
//外部传参设置:对应参数设置方法一,这种方法传过来的参数是字符串形式,如是数值参数,需要额外转换格式
var a = parseInt(process.argv[2]);
var b = parseInt(process.argv[3]);
console.log(add(a,b))
2、Python调用
import os
a