pyv8学习python和javascript变量进行交互

yipeiwu_com6年前Python基础

python取得javascript里面的值

复制代码 代码如下:

import PyV8

with PyV8.JSContext() as env1:
    env1.eval("""
                var_i = 1;
                var_f = 1.0;
                var_s = "test";
                var_b = true;
            """)
    vars = env1.locals
    var_i = vars.var_i
    print var_i


javascript取得python里面的值

复制代码 代码如下:

import PyV8

with PyV8.JSContext() as env1:
    env1.securityToken = "foo"
    env1.locals.prop = 3
    print int(env1.eval("prop"))

python和javascript里面的函数交互

python调用javascript里面的函数 python调用func就可以使用js里面的function函数了

复制代码 代码如下:

import PyV8

with PyV8.JSContext() as ctxt:
    func = ctxt.eval("""
                (function ()
                {
                    function a()
                    {
                        return "abc";
                    }

                    return a();
                })
                """)
    print func()

这样也可以

复制代码 代码如下:

import PyV8

with PyV8.JSContext() as ctxt:
    func = ctxt.eval("""
                    function a()
                    {
                        return "abc";
                    }

                    function c()
                    {
                        return "abc";
                    }
                """)
    a = ctxt.locals.a
    print a()

相关文章

Python常见格式化字符串方法小结【百分号与format方法】

本文实例讲述了Python常见格式化字符串方法。分享给大家供大家参考,具体如下: 【方式一】百分号(%)方式,类C的printf,需要分别不同类型。 1、匿名tuple。(推荐在参数少时...

Django1.7+python 2.78+pycharm配置mysql数据库教程

配置好virtualenv 和virtualenvwrapper后,使用pycharm创建新项目。之后要面临的问题就来了,之前一直使用的是sqlite作为开发数据库进行学习,按照之前看教...

django orm 通过related_name反向查询的方法

如下所示: class level(models.Model): l_name = models.CharField(max_length=50,verbose_name="等级名...

基于numpy中的expand_dims函数用法

基于numpy中的expand_dims函数用法

常见的一种应用场景: 条件:假设A的shape为[4, 2],B的shape为[5, 2] 目的:实现A中的每一行, 减去B中的所有行(broadcast操作)。 实现: A1 =...

python中sys.argv函数精简概括

python中sys.argv函数精简概括

sys.argv函数通常用来读取命令行参数,其中保存了程序的文件名和命令行参数,读入的参数以元组的形式保存。下面以sys.argv[0],sys.argv[1],sys.argv[1:]...