pip3 install py-mini-racer
eval() returns a scalar, execute() is able to return an object: from py_mini_racer import MiniRacer
js = """
let v = {
"txt": "Hello world",
"num": 42,
"val": [
[1, 2, 3],
[4, 5, 6]
]
};
"""
ctx = MiniRacer()
ctx.eval(js)
print(ctx.eval('v.val[1][2]'))
print(ctx.eval('v.txt'))
print(ctx.eval('v.num'))
for r in ctx.execute('v.val'):
for c in r:
print(c)