我一直在学习python shell文档,目前正在尝试:
testhello.py:
print('Hello from python')
在my server.js上(使用Node.js和Express):
var {PythonShell} = require('python-shell');
//next is inside a bigger function
socket.on("animal", function(){
ina.low();
inb.low();
var options = {
mode: 'text',
pythonPath: '/Users/myname/Desktop/final_project/for_pyshell/myvenv/bin/python3',
pythonOptions: ['-u'],
scriptPath: '/Users/myname/Desktop/final_project/for_pyshell',
args: ['value1', 'value2', 'value3']
};
PythonShell.run('testhello.py', options, function (err, results) {
if (err) throw err;
console.print('results: %j', results);
});
}) // closes socket.on
因此,我的python脚本和venv与我的节点应用程序位于不同的文件夹中。我没有得到任何错误,但也没有结果。有没有一个原因可以解释为什么将虚拟环境称为pythonPath在这里不起作用?我们应该改变什么?非常感谢您的帮助
添加:如果我将python shell代码移到socket.on结构之外,则会出现错误:
errno: 'ENOENT'
补充2:我用本地Python而不是venv实现了这一点,但如果有人有建议,我仍然对使用虚拟环境感兴趣
目前没有回答
相关问题 更多 >
编程相关推荐