使用过 PyExecJS 来执行 js 脚本,但是它是通过将 js 脚本文件加载到 python 中执行的。这样的话文件很多或是 nodejs 这种有很多包的就很难执行了。
所以我们用 python 直接调用 nodejs 的方式运行。
test.py
import os
cmd = 'node -e "require(\\"%s\\").init(%s,%s)"' % ('./test', 3, 5)
pipeline = os.popen(cmd)
result = pipeline.read()
print('结果是:', result)
test.js
function add(x, y) {
return x + y
}
module.exports.add = function (arg1, arg2) {
//调用函数,并返回
console.log(add(arg1, arg2))
}