40 - xml文档与字典之间的互相转换

网友投稿 701 2022-05-29

1. 如何将一个字典转换为xml文档,并将该xml文档保存成文本文件

''' dicttoxml pip install dicttixml ''' import dicttoxml from xml.dom.minidom import parseString d = [20, 'names', {'name': 'Bill', 'age': '30', 'salary': 2000}, {'name': 'Mike', 'age': '20', 'salary': 3000}, {'name': 'John', 'age': '40', 'salary': 4000}] bxml = dicttoxml.dicttoxml(d, custom_root='persons') xml = bxml.decode('utf-8') print(xml) dom = parseString(xml) prettyxml = dom.toprettyxml(indent=' ') print(prettyxml) f = open('persons1.xml', 'w', encoding='utf-8') f.write(prettyxml) f.close()

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

20namesBill302000Mike203000John404000 20 names Bill 30 2000 Mike 20 3000 John 40 4000

1

2

3

4

5

6

40 - xml文档与字典之间的互相转换

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

20 names Bill 30 2000 Mike 20 3000 John 40 4000

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

2. 如何读取xml文档的内容,并将其转换为字典

''' xmltodict pip install xmltodict ''' import xmltodict f = open('products.xml', 'rt', encoding='utf-8') xml = f.read() import pprint d = xmltodict.parse(xml) print(d) pp = pprint.PrettyPrinter(indent=4) pp.pprint(d) print(type(d))

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

OrderedDict([('root', OrderedDict([('products', OrderedDict([('product', [OrderedDict([('@uuid', '1234'), ('id', '10000'), ('name', 'iphone9'), ('price', '9999')]), OrderedDict([('@uuid', '4321'), ('id', '20000'), ('name', '特斯拉'), ('price', '800000')]), OrderedDict([('@uuid', '5678'), ('id', '30000'), ('name', 'Mac Pro'), ('price', '40000')])])]))]))]) OrderedDict([ ( 'root', OrderedDict([ ( 'products', OrderedDict([ ( 'product', [ OrderedDict([ ( '@uuid', '1234'), ( 'id', '10000'), ( 'name', 'iphone9'), ( 'price', '9999')]), OrderedDict([ ( '@uuid', '4321'), ( 'id', '20000'), ( 'name', '特斯拉'), ( 'price', '800000')]), OrderedDict([ ( '@uuid', '5678'), ( 'id', '30000'), ( 'name', 'Mac ' 'Pro'), ( 'price', '40000')])])]))]))])

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

41 - 将json字符串转换为类的实例

XML

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Go语言之并发编程
下一篇:《Java并发编程的艺术》 —3.1.2 Java内存模型的抽象结构
相关文章