前言: 有个给cocos2dx-lua 写工具的需求, 要求导出lua table文件,找不到现成合用的库,于是自己写了一套
0. 特性:
- list dict tuple 可混合使用 统一转换成 lua的table
- 带有合理的缩进
- 引用成环 会报错
- key只能为字符串或数字
1. 直接上代码
class LuaMaker:
"""
lua 处理器
"""
@staticmethod
def makeLuaTable(table):
"""
table 转换为 lua table 字符串
"""
_tableMask = {
}
_keyMask = {
}
def analysisTable(_table, _indent, _parent):
if isinstance(_table, tuple):
_table = list(_table)
if isinstance(_table, list):
_table = dict(zip(range(1, len(_table) + 1), _table))