你好,我是悦创。
Js2Py
你好,我是悦创。
简介:纯Python JavaScript转换器/解释器
一切都在100%纯Python中完成,因此非常易于安装和使用。支持Python 2和3。完全支持ECMAScript 5.1,ECMA 6支持仍处于试验阶段。
Simple Example:
import js2py
js2py.eval_js('console.log( "Hello World!" )') # 类似于 Python 中的 print
运行结果:
'Hello World!'
接下来,我先写一个 JavaScript 的代码:
function add(a, b) {
return a + b
}
那我们如何使用 Python 来运行呢?如下代码:
import js2py
js_code = """
function add(a, b){
return a + b
}
"""
add = js2py.eval_js(js_code) # 同学可以先暂时理解为编译
# 调用函数:
print(add(1, 2) + 3)
运行结果:
6
1. Js 代码翻译
新建 js 文件:
console.log("Hello World---AI悦创")
import js2py
print(js2py.translate_js('console.log( "Hello World!" )')) # 翻译成 Python 语言
# 将 js 文件翻译为 Python 脚本
js2py.translate_file('test.js', 'test.py')
# js2py.eval_js('console.log( "Hello World!" )')
2. 在 js 代码中使用 Python 函数
import js2py
print("sum: ", sum([1, 2, 3]))
context = js2py.EvalJs({'Python_sum': sum})
print("context Python_sum", context.Python_sum)
js_code = """
Python_sum([1, 2, 3])
"""
print("js_code 运行结果:", context.eval(js_code))
3. Js 代码中导入 Python 模块并使用
import js2py
# 在 js 代码中导入 Python 模块并使用
# 使用 pyimport 的语法
js_code = """
pyimport requests
console.log('导入成功');
var response = requests.get('http://www.baidu.com');
console.log(response.url);
console.log(response.content);
console.log(response.text);
"""
js2py.eval_js(js_code)