如何从Python运行JavaScript
在本文中,我们将讨论如何使用Python运行JavaScript文件。为此,我们将使用名为 JS2PY (纯Python中的JavaScript运行时)的Python模块。JS2PY通过直接将JavaScript转译为Python来工作。这意味着您可以直接从Python代码中运行JS,而无需安装像 V8 这样的大型外部引擎。
要使用该模块,首先必须将其安装到系统中,因为它不是内置的。
语法:
pip install js2py
要使用该模块,必须导入它。
语法:
import js2py
现在将JavaScript转换为Python,将JavaScript命令存储为某个变量中的字符串。我们将使用 eval_js() 函数来调用 js2py 模块,并将JavaScript代码作为参数传递给它。
eval_js() 函数在js2py模块中定义,用于评估JavaScript代码,在 eval_js 模块中将JavaScript代码作为参数传递。
语法:
js2py.eval_js(javascript code)
示例:
在Python中运行一个简单的JavaScript命令
Python3
import js2py
code_2 = "function f(x) {return x+x;}"
res_2 = js2py.eval_js(code_2)
print(res_2(5))
输出:
10
现在让我们看一下如何在Python中解释JS文件。首先,将该 *.js文件翻译为 *.py文件
js2py模块提供了将 JS 代码转换为 Python 代码的一种方法,我们必须使用 translate_file() 函数来实现。在翻译完成后,我们将导入Python文件并为JavaScript文件中声明的函数提供参数。
translate_file() 函数接受两个参数:Javascript文件和Python文件,最后将Javascript文件转换为Python文件。
语法:
js2py.translate_file(Javascript文件, Python文件)
示例: 使用Python运行JS文件
Javascript文件:
Javascript
function wish(name) {
console.log("Hello, "+name+"!")
}
Python文件:
Python3
import js2py
from temp import *
js2py.translate_file("hey.js", "temp.py")
temp.wish("GeeksforGeeks")
输出:
Hello,GeeksforGeeks
我们也可以在没有显式翻译的情况下运行JS。通过run_file()函数将*.js加载到一个变量中。
run_file() :
它被定义在js2py模块下,用于运行Javascript文件。它接受一个Javascript文件作为参数。
语法:
js2py.run_file(Javascript文件)
示例:
在Python中运行JS
Python3
import js2py
eval_res, tempfile = js2py.run_file("hey.js")
tempfile.wish("GeeksforGeeks")
输出:
Hello GeeksforGeeks
极客教程