从父Node js传递命令行参数给子进程。

问题描述 投票:0回答:1

我正在从node js文件中调用python函数。

我的Python文件


predictedResult = predictPicture(str(sys.argv[1]))
print(predictedResult)
sys.stdout.flush()

它从命令行接收一个参数作为参数。

Node js文件

const spawn = require('child_process').spawn;

const pythonProcess = spawn('python', ["./xxxxx.py"]);

pythonProcess.stdout.on('data', function (data) {
    console.log('Pipe data from python script ...');
    dataToSend = data.toString();
});

我想把一个命令行参数传递给我的子进程。

我想为每个循环传递许多参数并记录结果。

有什么方法可以做到吗?

python node.js command child-process
1个回答
0
投票

spawn 函数需要三个参数

  1. command: python
  2. [args] ["./xxxxx.py", "arg1", "arg2"]
  3. [options]: 你在这里不需要这个

第一个项目 args 数组是脚本名称,后面是其他可选参数。

const pythonProcess = spawn('python', ["./xxxxx.py", "arg1", "arg2"]);

现在你的 python 脚本应该收到

predictedResult = predictPicture(str(sys.argv[1]))
# sys.argv[1] -> "arg1"
print(predictedResult)
sys.stdout.flush()
© www.soinside.com 2019 - 2024. All rights reserved.