Home

Awesome

export.py

Export excel to Python/Json/Lua

参考 https://github.com/yanghuan/proton

Excel 文件格式

1. 通用格式

Excel 格式是这样的:

索引名称坐骑性别身高
intstrintintint
IdNameMountIdSexHeight
server/clientclientserver/clientserver/clientserver/client
1奥丁100011181
2托尔100021186
3希芙0172
'
6希芙60172
python3 ../export.py -f ./hero.xlsx -s 英雄 -t ./hero_data.json

导出的数据格式是这样的:

{
    "1": {
        "Height": 181,
        "MountId": 10001,
        "Name": "奥丁",
        "Sex": 1
    },
    "2": {
        "Height": 186,
        "MountId": 10002,
        "Name": "托尔",
        "Sex": 1
    },
    "3": {
        "Height": 172,
        "Name": "希芙",
        "Sex": 0
    },
    "6": {
        "Height": 172,
        "Name": "希芙6",
        "Sex": 0
    }
}

2. 全局格式

Excel 格式是这样的:

namevaluetypeoutdescription
NameLimit7intclient/server名字字数限制
HitCorrection1intserver命中修正系数
InitItem1001,1002,1003arrintserver初始任务获得道具
'
InitMissionM101,M102arrstrserver初始任务
python3 ../export.py -f ./hero.xlsx -s 全局参数 -t ./global_data.json -k global

导出的数据格式是这样的:

{
    "HitCorrection": 1,
    "InitItem": [
        1001,
        1002,
        1003
    ],
    "InitMission": [
        "M101",
        "M102"
    ],
    "NameLimit": 7
}

使用方法

python3 export.py -h

参考 test/test.py

推荐编写自动化脚本,读取 conf.ini 文件,实现批量导表。可以集成版本管理工具 Svn/Git 到自动化脚本。同时也推荐集成到服务器指令模块。

导出数据给 C# 使用

如果是 Unity 里使用,推荐使用 C# 编写工具解析 json 格式,然后再用 SaveAssets 序列化。使用的时候直接 Load。