将JavaScript模板文本转换为python词汇表

2024-10-02 10:20:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我想解析一个JavaScript代码,它定义了包含TemplateLiterals(``)的数据。你知道吗

下面是一个简单的例子

let data = {
cat: 'Retail', name: 'Dollar Mania', value: 30,
icon: 'img/dollarmania.png',
desc: `
        Best store in town! 

        <p>Founded in 2011</p>

`}

将这个JS对象转换成python字典的最佳pythonic方法是什么?你知道吗


Tags: 数据代码nameindata定义valuejavascript
1条回答
网友
1楼 · 发布于 2024-10-02 10:20:26

最安全的方法是用JavaScript运行对象定义,然后使用JavaScript将其导出为Python可以本地读取的格式。JSON是一种合适的格式。这将避免您必须用Python编写JavaScript解析器,这将不得不考虑许多边缘情况。你知道吗

在JavaScript中,将局部变量data中的对象转换为JSON,然后将其打印到stdout:

const dataAsJsonString = JSON.stringify(data);
console.log(dataAsJsonString);

Python程序可以使用Python内置的JSON解析库来解码JavaScript的输出:

import json

dataAsJsonString = sys.stdin.read()
data = json.loads(dataAsJsonString)

要将数据从JavaScript传递到Python,可以使用Node运行JavaScript程序,并将其输出通过管道传递到Python程序:node dataSource.js | python data_reader.py。或者,如果无法使用节点运行JavaScript,可以将控制台输出复制到剪贴板,然后通过管道将操作系统的命令粘贴到Python程序,例如pbpaste | python data_reader.pyxclip -out -selection clipboard | python data_reader.py。你知道吗

相关问题 更多 >

    热门问题