X Tutup
Skip to content

Commit eb89c63

Browse files
committed
add 0017 0018 0019
1 parent 9bff757 commit eb89c63

File tree

9 files changed

+161
-0
lines changed

9 files changed

+161
-0
lines changed

Jaccorot/0017/0017.py

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
#!/usr/bin/python
2+
# coding=utf-8
3+
4+
"""
5+
第 0017 题: 将 第 0014 题中的 student.xls 文件中的内容写到 student.xml 文件中,如
6+
7+
下所示:
8+
9+
<?xml version="1.0" encoding="UTF-8"?>
10+
<root>
11+
<students>
12+
<!--
13+
学生信息表
14+
"id" : [名字, 数学, 语文, 英文]
15+
-->
16+
{
17+
"1" : ["张三", 150, 120, 100],
18+
"2" : ["李四", 90, 99, 95],
19+
"3" : ["王五", 60, 66, 68]
20+
}
21+
</students>
22+
</root>
23+
"""
24+
25+
import xlrd
26+
import json
27+
from lxml import etree
28+
29+
30+
def read_exl(file_name):
31+
exl = xlrd.open_workbook(file_name)
32+
exl_sheet = exl.sheet_by_name('student')
33+
data = {}
34+
for i in range(exl_sheet.nrows):
35+
data[exl_sheet.row_values(i)[0]] = exl_sheet.row_values(i)[1:]
36+
return json.dumps(data, encoding='utf-8')
37+
38+
def save_to_xml(data, new_file_name):
39+
root = etree.Element('root')
40+
students = etree.SubElement(root, 'students')
41+
students.append(etree.Comment(u"""学生信息表 "id" : [名字, 数学, 语文, 英文]"""))
42+
students.text = data
43+
44+
student_xml = etree.ElementTree(root)
45+
student_xml.write(new_file_name, pretty_print=True, xml_declaration=True, encoding='utf-8')
46+
47+
48+
if __name__ == '__main__':
49+
content = read_exl('student.xls')
50+
save_to_xml(content, 'student.xml')

Jaccorot/0017/student.xls

5.5 KB
Binary file not shown.

Jaccorot/0017/student.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<root>
3+
<students>{"1": ["\u5f20\u4e09", 150.0, 120.0, 100.0], "3": ["\u738b\u4e94", 60.0, 66.0, 68.0], "2": ["\u674e\u56db", 90.0, 99.0, 95.0]}<!--学生信息表 "id" : [名字, 数学, 语文, 英文]--></students>
4+
</root>

Jaccorot/0018/0018.py

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
#!/usr/bin/python
2+
# coding=utf-8
3+
4+
"""
5+
第 0018 题: 将 第 0015 题中的 city.xls 文件中的内容写到 city.xml 文件中,如下所示:
6+
7+
<?xml version="1.0" encoding="UTF-8"?>
8+
<root>
9+
<citys>
10+
<!--
11+
城市信息
12+
-->
13+
{
14+
"1" : "上海",
15+
"2" : "北京",
16+
"3" : "成都"
17+
}
18+
</citys>
19+
</root>
20+
"""
21+
22+
import xlrd
23+
import json
24+
from lxml import etree
25+
26+
27+
def read_exl(file_name):
28+
exl = xlrd.open_workbook(file_name)
29+
exl_sheet = exl.sheet_by_name('city')
30+
data = {}
31+
for i in range(exl_sheet.nrows):
32+
data[exl_sheet.row_values(i)[0]] = exl_sheet.row_values(i)[1]
33+
return json.dumps(data, encoding='utf-8')
34+
35+
def save_to_xml(data, new_file_name):
36+
root = etree.Element('root')
37+
students = etree.SubElement(root, 'citys')
38+
students.append(etree.Comment(u"""城市信息"""))
39+
students.text = data
40+
41+
student_xml = etree.ElementTree(root)
42+
student_xml.write(new_file_name, pretty_print=True, xml_declaration=True, encoding='utf-8')
43+
44+
45+
if __name__ == '__main__':
46+
content = read_exl('city.xls')
47+
save_to_xml(content, 'city.xml')

Jaccorot/0018/city.xls

5.5 KB
Binary file not shown.

Jaccorot/0018/city.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<root>
3+
<citys>{"1": "\u4e0a\u6d77", "3": "\u6210\u90fd", "2": "\u5317\u4eac"}<!--城市信息--></citys>
4+
</root>

Jaccorot/0019/0019.py

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
#!/usr/bin/python
2+
# coding=utf-8
3+
4+
"""
5+
第 0019 题: 将 第 0016 题中的 numbers.xls 文件中的内容写到 numbers.xml 文件中,如下
6+
7+
所示:
8+
9+
<?xml version="1.0" encoding="UTF-8"?>
10+
<root>
11+
<numbers>
12+
<!--
13+
数字信息
14+
-->
15+
16+
[
17+
[1, 82, 65535],
18+
[20, 90, 13],
19+
[26, 809, 1024]
20+
]
21+
22+
</numbers>
23+
</root>
24+
"""
25+
26+
import xlrd
27+
import json
28+
from lxml import etree
29+
30+
31+
def read_exl(file_name):
32+
exl = xlrd.open_workbook(file_name)
33+
exl_sheet = exl.sheet_by_name('numbers')
34+
data = []
35+
for i in range(exl_sheet.nrows):
36+
temp = [int(x) for x in exl_sheet.row_values(i) ]
37+
data.append(temp)
38+
return json.dumps(data, encoding='utf-8')
39+
40+
def save_to_xml(data, new_file_name):
41+
root = etree.Element('root')
42+
students = etree.SubElement(root, 'numbers')
43+
students.append(etree.Comment(u"""数字信息"""))
44+
students.text = data
45+
46+
student_xml = etree.ElementTree(root)
47+
student_xml.write(new_file_name, pretty_print=True, xml_declaration=True, encoding='utf-8')
48+
49+
50+
if __name__ == '__main__':
51+
content = read_exl('numbers.xls')
52+
save_to_xml(content, 'numbers.xml')

Jaccorot/0019/numbers.xls

5.5 KB
Binary file not shown.

Jaccorot/0019/numbers.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<root>
3+
<numbers>[[1, 82, 65535], [20, 90, 13], [26, 809, 1024]]<!--数字信息--></numbers>
4+
</root>

0 commit comments

Comments
 (0)
X Tutup