首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用PyV8从python中读取javascript值

如何用PyV8从python中读取javascript值
EN

Stack Overflow用户
提问于 2013-05-17 03:17:10
回答 1查看 3.2K关注 0票数 1

我已经在Python中实现了PyV8。我有一个示例javascript文件,如下所示:

main-js.js:

代码语言:javascript
复制
var numOne = 1+2;
var numTwo = 3+1;
var numThree = 5;

如何使用PyV8将每个变量读入Python?到目前为止,我已经打开并读取了这个文件:ctxt.eval(ctxt.eval(“main-js.js”).read())。但我不知道如何从文件中获取每个变量。由于缺乏有关pyv8的文档,因此很难找到它

EN

回答 1

Stack Overflow用户

发布于 2013-05-17 03:31:25

JSContext对象有一个locals属性,它是上下文局部变量的字典。所以,你想要ctxt.locals["numOne"]等等。

另一种方法是:eval()有一个返回值,这是计算的最后一条语句的值。因此,您还可以执行一条JavaScript语句来计算您感兴趣的变量。在这种情况下,您只需创建一个Python数组,然后可以将其解压到所需的JavaScript变量中。您可以通过将语句附加到从文件中读取的代码中来实现这一点,或者只需对其执行单独的eval()

代码语言:javascript
复制
with PyV8.JSContext() as ctxt:
    with open("main-js.js") as jsfile:
        ctxt.eval(jsfile.read())
    numOne, numTwo, numThree = ctxt.eval("[numOne, numTwo, numThree]")
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16595653

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档