Python把Excel表格转化xml文件

# 首先了解xlrd模块
#data = xlrd.open_workbook('文件名') 打开Excel文件
#ret = data.sheet_names() 获取所有工作表名
#sheet = data.sheet_by_name(ret) 获取ret工作表中所有数据
#sheet.neows 获取行数
#sheet.ncols 获取列数
#sheet.cell_value(1,2) 获取0行1列单元格数据
import xlrd

data = xlrd.open_workbook("./ces4.xls")
txt = open("4.xml", "a") # 文件读写方式是追加
count = data.sheet_names() # 统计所有的应用名
# print('------------------------')
number = len(count) # 获取又多少个表单
a = '''<?xml version='1.0' encoding='UTF-8'?>
    \n<resTypes>'''
Text = a
txt.write(Text)
# print(sheet.cell_value(2, 3))
for i in range(number):
    sheet_name = data.sheet_names()[i]  # 第一个应用的名字
    sheet = data.sheet_by_name(sheet_name)  # 获取第一个表格里的数据
    ret = sheet.nrows # 每个表的行数
    # print(ret)
    # print(i+1)
    for i in range(ret):
        if sheet.cell_value(i+1, 3) == '数据类型':
            a='''\n\n<!--%s -->
            \n<!--科技司核心模型 -->
            \n<resType id="LoadBalancerSync" cossType="LoadBalancer" uyunType="LoadBalancer" cossKey="name" uyunKey="name">
            ''' % sheet_name
            print(sheet_name) # 打印统计的表格名
            Text = a
            txt.write(Text)
        elif sheet.cell_value(i+1, 3) == '文本':
            Text = "\n<property cossCode=\"%s\" uyunCode=\"%s\" type=\"%s\"></property>" %(sheet.cell_value(i+1, 5), sheet.cell_value(i+1, 2),'text')
            txt.write(Text)
        elif sheet.cell_value(i + 1, 3) == '字典':
            Text = "\n<property cossCode=\"%s\" uyunCode=\"%s\" type=\"%s\" dictCode=\"%s\" ></property>" % (
            sheet.cell_value(i + 1, 5), sheet.cell_value(i + 1, 2), 'dist', sheet.cell_value(i + 1, 6) )
            txt.write(Text)
        elif sheet.cell_value(i + 1, 3) == '部门':
            Text = "\n<property cossCode=\"%s\" uyunCode=\"%s\" type=\"%s\"></property>" % (
            sheet.cell_value(i + 1, 5), sheet.cell_value(i + 1, 2), 'bumen')
            txt.write(Text)
        elif sheet.cell_value(i + 1, 3) == '日期':
            Text = "\n<property cossCode=\"%s\" uyunCode=\"%s\" type=\"%s\"></property>" % (
            sheet.cell_value(i + 1, 5), sheet.cell_value(i + 1, 2), 'time')
            txt.write(Text)
        elif sheet.cell_value(i + 1, 3) == '引用':
            Text = "\n<property cossCode=\"%s\" uyunCode=\"%s\" type=\"%s\" referCossClassCode=\"%s\" referUyunClassCode=\"%s\"></property>" % (
            sheet.cell_value(i + 1, 5), sheet.cell_value(i + 1, 2), 'time', sheet.cell_value(i + 1, 6), sheet.cell_value(i + 1, 5))
            txt.write(Text)
        elif sheet.cell_value(i + 1, 3) == '':
            end = '\n</resType>'
            txt.write(end)
            break
a = '\n<resTypes>'
Text = a
txt.write(Text)
txt.close()

  

转载于:https://www.cnblogs.com/QQmini/p/11147586.html

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值