Python 练习册 0017、0018、0019题 (xls转xml)

第 0017 题: 将 第 0014 题中的 student.xls 文件中的内容写到 student.xml 文件中,如

下所示:

<?xml version="1.0" encoding="UTF-8"?>
<root>
<students>

{
"1" : ["张三", 150, 120, 100],
"2" : ["李四", 90, 99, 95],
"3" : ["王五", 60, 66, 68]
}
</students>
</root>

import xlrd
from xml.etree.ElementTree import Element, SubElement, Comment, ElementTree


wb = xlrd.open_workbook(r'file\stu.xls')
sh = wb.sheet_by_index(0)

data = dict()
for rx in range(sh.nrows):
    row = sh.row(rx)
    value_list = list()
    key = row[0].value
    for i in row[1:]:
        value = i.value
        value_list.append(value)

    data[key] = value_list
print(data)

root = Element('root')
comment = Comment('学生信息表"id" : [名字, 数学, 语文, 英文]')
root.append(comment)
child = SubElement(root, 'students')
child.text = str(data)
tree = ElementTree(root)
tree.write('file\\student22.xml', encoding='utf8')

第 0018 题: 将 第 0015 题中的 city.xls 文件中的内容写到 city.xml 文件中,如下所示:

<?xmlversion="1.0" encoding="UTF-8"?>
<root>
<citys>

{
"1" : "上海",
"2" : "北京",
"3" : "成都"
}
</citys>
</root>

import xlrd
from xml.etree.cElementTree import Element, ElementTree, Comment, SubElement

wb = xlrd.open_workbook('file\\city.xls')
ws = wb.sheet_by_index(0)
data = dict()
for rx in range(ws.nrows):
    row = ws.row(rx)
    key = row[0].value
    value = row[1].value
    data[key] = value

root = Element('root')
comment = Comment('城市信息')
root.append(comment)
child = SubElement(root, 'citys')
child.text = str(data)
tree = ElementTree(root)
tree.write('file\\city.xml', encoding='utf8')

第 0019 题: 将 第 0016 题中的 numbers.xls 文件中的内容写到 numbers.xml 文件中,如下

所示:

<?xml version="1.0" encoding="UTF-8"?>
<root>
<numbers>

[
[1, 82, 65535],
[20, 90, 13],
[26, 809, 1024]
]

</numbers>
</root>

import xlrd
from xml.etree.cElementTree import Element, ElementTree, SubElement, Comment

wb = xlrd.open_workbook('file\\num.xls')
ws = wb.sheet_by_index(0)
content = list()
for xr in range(ws.nrows):
    row = ws.row(xr)
    num_list = list()
    for i in row:
        value = i.value
        num_list.append(value)
    content.append(num_list)
print(content)

root = Element('root')
comment = Comment('数字信息')
root.append(comment)
child = SubElement(root, 'numbers')
child.text = str(content)
tree = ElementTree(root)
tree.write('file\\num.xml', encoding='utf8')

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,463评论 19 139
  • 第 0014 题: 纯文本文件 student.txt为学生信息, 里面的内容(包括花括号)如下所示:{ "1...
    海上牧云l阅读 4,714评论 0 2
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,955评论 18 399
  • 两日里想着其余的事情,耳机里满是深情倾诉。 饭桌旁商人戴着眼镜,斯文,大方。自我得意,且滔滔不绝。我只顾低头吃饭,...
    岭边冲浪里阅读 1,365评论 0 1
  • 历经连续几天的阴雨寒意,感恩今天的阳光灿烂,人生无常世事难料,最近的一些事件感触极深,生命短暂活着一天就应该好...
    Miss微微恩阅读 1,339评论 0 0