我正在尝试使用PyPyJS来解释浏览器中的python代码,但是我不需要一个控制台。我想要两个框,特别是文本区域。我的问题是,无论我如何使用PyPyJS API,我都看不到可以输入自己的字符串值并重定向standrad输出的位置。我已经弄清楚了如果我在控制台中输入内容时如何重定向输出,但不输入自己的输入并重定向输出。代码进度列在下面。
<textarea style="height:250px; width:250px;" id="inputconsole">print("hello world")</textarea>
<textarea style="height:250px; width:250px;" id="outputconsole"> output text</textarea>
function console_exec(code) {
console.log("exec: '" + code + "'");
pypyjs.exec(code).then(function() {
pypyjs.stdout("\n>>> ");
}, function (err) {
pypyjs.stderr(err.trace);
});
}
$(function () {
pypyjs.stdout("Loading PyPy.js.\n\n");
pypyjs.stdout('It\'s big, so this might take a while...');
var pseudo_status = setInterval(function(){ pypyjs.stdout("."); }, 500);
pypyjs.stdout = pypyjs.stdeer =function(data){
$("#outputconsole").val(data);
}
pypyjs.ready().then(function() {
clearInterval(pseudo_status);
pypyjs.stdout('Welcome to PyPy.js!\n')
console_exec(document.getElementById('inputconsole').value);
console.log("FIVE PLUS FIVE");
});
});
console_exec函数取自github提供的示例,下面的函数取自经过重大修改的官方网站。
编辑:
https://github.com/pypyjs/pypyjs-examples https://pypyjs.org/