在Python中,如何导入在lua文件中定义的变量?

In Python, how to import variables defined in a lua file?

我有一些 lua 个文件需要在 Python 中阅读。我希望能够导入变量(主要是表格)。

LUA 文件示例:

print("lua display text")

Civs = { 
    CIVILIZATION_EGYPT = { -- lua comment 1
        Playable = true,
        SpawnYear = -3000,
        StartX = 75,
        StartY = 32,
        Table = { },
        Text = "abc",
        TableTable = { {"a"}, {"b"}, {"c"}, {"d"}, {}, {}, {}},
    };
    CIVILIZATION_INDIA = { 
        Playable = true,
        SpawnYear = -3000,
        StartX = 98,
        StartY = 42,
        Table = { },
        Text = "abc",
        TableTable = { {"a"}, {"b"}, {"c"}, {"d"}, {}, {}, {}},
    };
    CIVILIZATION_BABYLON = {
        Playable = true,
        SpawnYear = -3000,
        StartX = 84,
        StartY = 41,
        Table = { },
        Text = "abc",
        TableTable = { {"a"}, {"b"}, {"c"}, {"d"}, {}, {}, {}},
     }
}
-- lua comment 2

如果只定义了变量,我想我可以只导入文件,它会 运行 为 python。但是有注释甚至打印命令导致失败。

  • 从Python读取文件并将变量解析为Python个变量

  • 在Lua中序列化这些变量并在Python

    中反序列化它们
  • 使用自定义 Lua 解释器执行该代码,然后通过 Python API

    提供该数据

如果您想自动执行此操作,第二种方法将要求您解析 Lua 代码并注入您自己的代码,以便序列化变量。所以你可以选择第一种方式。