资源简介

python 写的excel to lua表结构的小工具,游戏开发策划必备^_^

资源截图

代码片段和文件信息

# -*- coding: utf-8 -*-

import sys
from xlrd import open_workbook
import os

cur_path = os.getcwd()
path = cur_path + “/“ + sys.argv[1]

reload(sys)
sys.setdefaultencoding(‘utf-8‘)

fileName = sys.argv[2]

talbleName = sys.argv[3]

def openExecl(_file):
try:
print(“openExecl file name : “ + _file)
data = open_workbook(_file )
return data
except Exceptione:
print str(e)

def excel2lua():
_data = openExecl(path)
_sheetOne = _data.sheet_by_index(0)
_rows = _sheetOne.nrows
_cols = _sheetOne.ncols
print(_rows _cols)#行列数

output = open(cur_path + “/out/“+fileName+“.lua““w“)
output.write(talbleName)
output.write(“ = “)
output.write(talbleName)
output.write(“ or {\n“)
#row 1 作为lua表的属性用
row_1 = _sheetOne.row_values(0)
#第二行表示类型 text int double bool
row_2 = _sheetOne.row_values(1)
#从第三行开始
for x in xrange(3_rows-1):
_oneRow = _sheetOne.row_values(x)
#print _oneRow[2]
output.write(“ [ \‘“)
idname = _oneRow[0]
output.write(str(int(idname)))
output.write(“\‘ ] = { “)
output.write(“\n“)
for cc in xrange(1_cols-1):
output.write(“ [\‘“)
output.write(row_1[cc])

_value = _oneRow[cc]
if row_2[cc] == “int“:
output.write(“\‘] = “)
output.write(str(int(_value)))
output.write(“ “)

if row_2[cc] == “text“:
output.write(“\‘] = \‘“)
output.write(str(_value))
output.write(“\‘ “)

if row_2[cc] == “bool“:
output.write(“\‘] = “)
if _value == “TRUE“ or _value == “true“ or _value == 1:
_value = “true“
if _value == “FALSE“ or _value == “false“ or _value == 0:
_value = “false“
output.write(str(_value))
output.write(“ “)

if row_2[cc] == “double“:
output.write(“\‘] = “)
output.write(str(float(_value)))
output.write(“ “)


output.write(“\n“)
output.write(“  }“)
output.write(“\n“)

output.write(“};“)
output.close()

def main():
excel2lua()

if __name__==“__main__“:

    main()

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-02-02 13:45  exceltolua\
     文件        6148  2015-02-02 13:47  exceltolua\.DS_Store
     目录           0  2015-02-02 13:48  __MACOSX\
     目录           0  2015-02-02 13:48  __MACOSX\exceltolua\
     文件         226  2015-02-02 13:47  __MACOSX\exceltolua\._.DS_Store
     文件        1991  2015-02-02 13:46  exceltolua\excel2lua.py
     文件       35319  2015-01-30 17:40  exceltolua\for_test.xlsx
     文件         120  2015-01-30 17:40  __MACOSX\exceltolua\._for_test.xlsx
     文件          12  2014-08-07 15:44  exceltolua\make.sh
     文件         226  2014-08-07 15:44  __MACOSX\exceltolua\._make.sh
     文件          98  2015-02-02 13:45  exceltolua\note.txt
     文件         171  2015-02-02 13:45  __MACOSX\exceltolua\._note.txt
     目录           0  2015-02-02 13:47  exceltolua\out\
     文件        6148  2015-02-02 13:47  exceltolua\out\.DS_Store
     目录           0  2015-02-02 13:48  __MACOSX\exceltolua\out\
     文件         226  2015-02-02 13:47  __MACOSX\exceltolua\out\._.DS_Store
     文件       19162  2015-02-02 13:47  exceltolua\out\for_test2.lua
     文件       19172  2015-01-30 17:42  exceltolua\out\TaskTable.lua
     文件       18854  2015-01-30 17:29  exceltolua\out\TEST.lua
     文件         226  2015-02-02 13:47  __MACOSX\exceltolua\._out
     目录           0  2015-01-29 15:08  exceltolua\xlrd\
     文件        8196  2015-01-29 15:08  exceltolua\xlrd\.DS_Store
     目录           0  2015-02-02 13:48  __MACOSX\exceltolua\xlrd\
     文件         120  2015-01-29 15:08  __MACOSX\exceltolua\xlrd\._.DS_Store
     文件       21105  2013-06-10 23:47  exceltolua\xlrd\__init__.py
     文件         226  2013-06-10 23:47  __MACOSX\exceltolua\xlrd\.___init__.py
     文件        3321  2014-06-19 17:39  exceltolua\xlrd\__init__.pyc
     文件         226  2014-06-19 17:39  __MACOSX\exceltolua\xlrd\.___init__.pyc
     文件       17511  2013-06-10 23:47  exceltolua\xlrd\biffh.py
     文件         226  2013-06-10 23:47  __MACOSX\exceltolua\xlrd\._biffh.py
     文件       15051  2014-06-19 17:39  exceltolua\xlrd\biffh.pyc
............此处省略45个文件信息

评论

共有 条评论