无法使用节点读取 python 中的文件

Can't read a file in python using node

我正在 运行ning python 节点网络应用程序中,我正在尝试加载和读取 python 中的文件,对其进行一些处理,然后吐出node.js.

当我运行以下python代码时,没有任何反应。

Python

import json
import sys

with open('trainingData.json') as file:
    data = json.load(file)

print(data)
print('hello from python')
sys.stdout.flush()

当我删除 with open 时,它运行良好。如何读取 python 中的文件并在 node.js 中调用该文件?这是节点代码

节点

app.get('/', (req, res) => {
    const spawn = require('child_process').spawn;
    const process = spawn('python', ['./python/script.py', 'Hello', 'World']);
    process.stdout.on('data', data => console.log(data.toString()));

    res.send('he');
});

(当我 运行 来自终端的 python 文件时,它工作正常。)

您可以使用spawn 的cwd(当前工作目录)选项来指定目录。要将其设置为“当前”当前工作目录,请使用 __dirname.

const process = spawn('python', ['./python/script.py', 'Hello', 'World'], {cwd: __dirname});