JavaScript调用Python程序

本文介绍了如何使用JavaScript通过child_process模块调用Python程序,并传递参数。JavaScript代码创建了一个Promise,然后执行Python脚本mytest0.py,传入了字符串和数值参数。Python脚本接收这些参数并进行简单的运算,输出结果。通过这种方式,实现了JavaScript和Python之间的数据交换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JavaScript调用Python程序

简介

在有些情况下需要使用不同的语言来完成一个项目,因此就有可能出现不同语言的程序之间的相互调用,本文主要介绍如何使用JavaScript调用Python程序并且实现参数的传递。

JavaScript代码

JavaScript代码属于主程序,在里面用到了child_process这个包,使用这个包可以运行命令行,也就相当于运行了Python程序,具体的代码如下所示:

const exec = require('child_process').exec


const p0 = new Promise((resolve, reject)=>{
    let v0 = "i am js"
    resolve(v0)
})
p0.then((value)=>{
    console.log(value)
}).then(()=>{
    let v1 = 'success'
    let v2 = 'test'
    let v3 = 10
    let v4 = 47
    let cmdStr = 'python3 mytest0.py' + ' ' + v2 + ' ' + v3 + ' ' + v4    
    exec(cmdStr, (err, stdout, stderr)=>{
        if(err){
            console.log(stderr)
        }else{
            console.log(stdout)
        }
    })
    return v1
}).then((v1)=>{
    setTimeout(()=>{
        console.log(v1)
    }, 5000)
}).catch((err)=>{
    console.log(err)
}).finally(()=>{
    
})


Python代码

Python程序是被调用的程序,这里为了简单期间,只是写了一个简单的程序作为示例:

import sys


v0 = sys.argv[1]
v1 = eval(sys.argv[2])
v2 = eval(sys.argv[3])


def main():
    print('i am python')
    print(v0)
    print(v1 + v2)


if __name__ == '__main__':
    main()
    

运行结果展示

运行上述JavaScript代码,所得到的结果如下图所示:
在这里插入图片描述

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hhh江月

您的鼓励将是我创作的最大动力。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值