Python 与 JavaScript 混合编程
PythonMonkey
PythonMonkey 是一个 Python 与 JavaScript 混合编程的工具,它可以让你在 Python 中调用 JavaScript 函数,实现 Python 与 JavaScript 的混合编程。
安装:
bash
pip install pythonmonkey
使用:
python
import pythonmonkey as pm
hello = pm.eval("() => { return 'Hello from Spidermonkey!' }")
hello()
# 'Hello from Spidermonkey!'
示例代码
本文未提供完整项目示例,请参考 PythonMonkey-examples 项目,其中包含了 PythonMonkey 的完整示例代码。
异步支持
python
import asyncio
async def async_fn():
await pm.eval("""
new Promise((resolve) => setTimeout((...args) => {
console.log(args);
resolve();
}, 1000, 42, "abc")
)
""")
await pm.eval("async (x) => await x")(asyncio.sleep(0.5))
asyncio.run(async_fn())
命令行工具
在 test.js
中使用 Python 库:
python
# date-lib.py
from datetime import date # You can use Python libraries.
exports['today'] = date.today()
可在 test.js
中调用 require('./date-lib')
:
js
// test.js
const dateLib = require('./date-lib')
console.log(dateLib.today)
执行测试:
bash
pmjs test.js