十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
【PyExecJS】
阜宁ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!
#encoding: utf-8 #author: walker # date: 2019-03-13 # summary: 利用 PyExecJS 调用 js 函数 import execjs JSCode = r''' function add(x, y) { return x + y; } ''' CTX = execjs.compile(JSCode) def test(): # 直接使用 print(execjs.get().eval('3+2')) # 调函数使用 print(CTX.call('add', 3, 6)) if __name__ == '__main__': test()
【Node.js】
#encoding: utf-8 #author: walker # date: 2019-03-13 # summary: 直接用 Node.js 调用 js 函数 from subprocess import check_output def test(): # 直接调用 bytesTxt = check_output('node -e console.log(3+2)', timeout=100) print(bytesTxt.decode('utf8').strip()) # 用 node 直接执行 js 脚本 bytesTxt = check_output(['node','t.js', '3', '6'], timeout=100) print(bytesTxt.decode('utf8').strip()) if __name__ == '__main__': test()
t.js
function add(x, y) { return x + y; } var args = process.argv.splice(2); console.log(add(parseInt(args[0]), parseInt(args[1])));
【Node.js 指定函数】
#encoding: utf-8 #author: walker # date: 2019-03-14 # summary: 直接用 Node.js 调用指定 js 函数 from subprocess import check_output JSCode = r''' function add(x, y) { return x + y; } function sub(x, y) { return x - y; } function foo(x) { return x; } ''' def test(): jscode = JSCode + 'process.stdout.write(add(3, 2).toString())' rtn = check_output('node', input=jscode, universal_newlines=True, timeout=100) print(rtn) if __name__ == '__main__': test()
【相关阅读】
Python之系统交互(subprocess)
*** walker ***