Javascript 将Python函数返回到Chrome控制台
我试图使用Python中的eel将一个函数从Python返回到google chrome控制台 这是我的当前代码: PythonJavascript 将Python函数返回到Chrome控制台,javascript,python,html,eel,Javascript,Python,Html,Eel,我试图使用Python中的eel将一个函数从Python返回到google chrome控制台 这是我的当前代码: Python import eel eel.init('web') print("Start") @eel.expose def my_python_function(a, b): print(a, b) eel.start('index.html') HTML <!DOCTYPE html> <html lang="en" dir="l
import eel
eel.init('web')
print("Start")
@eel.expose
def my_python_function(a, b):
print(a, b)
eel.start('index.html')
HTML
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>Tutorial</title>
<script type="text/javascript" src="/eel.js"></script>
<script>
console.log('Calling Python...');
eel.my_python_function(1, 2);
</script>
</head>
<body>
<p>test</p>
</body>
</html>
这是我的尝试2
<script type="text/javascript" src="/eel.js"></script>
<script>
console.log('Calling Python...');
a = eel.my_python_function(1, 2);
console.log(a());
</script>
log('callingpython…');
a=eel.my_python_函数(1,2);
log(a());
已调整控制台。日志(a);到console.log(a())
输出为promise
实际输出应为12
在Javascript中,语言不允许我们在等待时阻塞
对于回调,除非在异步函数中使用wait。
因此,Javascript方面的等效代码是:
//在标记为'async'的函数中,我们可以使用'await'关键字。
异步函数run(){
//第一个调用返回函数,第二个调用实际执行它
设a=wait eel.my_python_function()(1,2);
//必须在call前面加上'await',否则语法相同
log(“从Python获得:+a);
}
run()代码>您的python函数不会返回任何尝试使用的内容
Python:
@eel.expose
def my_python_function(a, b):
return a+ b
Js:
我也遇到了同样的问题,这是我找到的唯一解决方案,它在这里返回我这个错误代码:`return_val=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\代码>?
<script type="text/javascript" src="/eel.js"></script>
<script>
console.log('Calling Python...');
a = eel.my_python_function(1, 2);
console.log(a());
</script>
@eel.expose
def my_python_function(a, b):
return a+ b
console.log('Calling Python...');
eel.my_python_function(1, 2)().then((r) => {
console.log(r);
});