node.js中调用python
时间: 2023-10-01 22:10:23 浏览: 97
在 Node.js 中调用 Python 可以使用 `child_process` 模块。具体步骤如下:
1. 安装 `child_process` 模块
在命令行中输入以下命令:
```
npm install child_process
```
2. 编写 Node.js 代码
在 Node.js 代码中调用 Python 的方式如下:
```javascript
const { spawn } = require('child_process');
const pythonProcess = spawn('python', ['script.py', arg1, arg2, ...]);
pythonProcess.stdout.on('data', (data) => {
console.log(`stdout: ${data}`);
});
pythonProcess.stderr.on('data', (data) => {
console.error(`stderr: ${data}`);
});
pythonProcess.on('close', (code) => {
console.log(`child process exited with code ${code}`);
});
```
其中,`script.py` 是要执行的 Python 脚本文件名,`arg1`、`arg2` 等是传给 Python 脚本的参数。
3. 编写 Python 代码
在 Python 脚本中可以通过 `sys.stdin.readline()` 来读取 Node.js 传递的参数,并通过 `print()` 函数来输出结果。
```python
import sys
arg1 = sys.stdin.readline().strip()
arg2 = sys.stdin.readline().strip()
# 执行一些操作
result = arg1 + arg2
# 输出结果
print(result)
```
注意:在 Python 中使用 `print()` 函数输出结果时,需要将结果输出到标准输出流中,否则 Node.js 将无法获取到结果。
阅读全文