欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

代码调试【1】在js文件中调用Python函数,并获取返回值

程序员文章站 2024-02-21 18:46:28
...

在js文件中调用Python函数,并获取返回值

1 安装eel包

在官网上安装eel包

网址:https://github.com/samuelhwilliams/Eel#install
安装包的教程和网址

Install from pypi with pip:

pip install eel

To include support for HTML templating, currently using Jinja2:

pip install eel[jinja2]

2 在js中调用Python中的函数

首先在Python中声明该函数:

# -*- coding: utf-8 -*-
import eel
@eel.expose
def test_print(str):
    
    print("进来了",str)
    test_process(str)  #python 中的处理过程,再调用js中的函数返回
    
    
def test_process(str):
    str2 = str+'已处理'
    eel.system_sends_message2(str2)  # 调用js文件里的函数,将结果返回去


if __name__ == '__main__':
    eel.init("D:\MyCode\CodePytorch\charooms-html-master")
    eel.start("room.html")

在 room.html中声明:

<script type="text/javascript" src="/eel.js"></script>

如下图:
代码调试【1】在js文件中调用Python函数,并获取返回值

js中的需要声明两处:
一个是调用Python的语句,将数据送到Python中,代码如下:

eel.test_print(str)

第二个是接受将Python中处理过的数据,定义一个函数

eel.expose(system_sends_message2)
function system_sends_message2 (message,userName='交小童', userPortrait=13){
//处理的结果已经送到message中了,
}

3 运行和结果

要运行一下py文件,初始化界面:

然后输入数据,即可显示已经处理的数据,

代码调试【1】在js文件中调用Python函数,并获取返回值
console 中会显示:

代码调试【1】在js文件中调用Python函数,并获取返回值
表示数据已经从前端传递过来了。