如何从Python运行JavaScript

如何从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

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程