Use xml.etree.elementtree to print nicely formatted xml files
本问题已经有最佳答案,请猛点这里访问。
我正在尝试使用
这就是我要得到的
1 | <Language><En><Port>Port</Port><UserName>UserName</UserName></En><Ch><Port>IP地址</Port><UserName>用户名称</UserName></Ch></Language> |
这就是我想看到的。
1 2 3 4 5 6 7 8 9 10 | <Language> <En> <Port>Port</Port> <UserName>UserName</UserName> </En> <Ch> <Port>IP地址</Port> <UserName>用户名称</UserName> </Ch> </Language> |
号
您可以使用来自
1 2 3 4 5 6 | def prettify(elem): """Return a pretty-printed XML string for the Element. """ rough_string = ElementTree.tostring(elem, 'utf-8') reparsed = minidom.parseString(rough_string) return reparsed.toprettyxml(indent="\t") |
其思想是在字符串中打印您的
来源:http://pymotw.com/2/xml/etree/elementtree/create.html
可以使用库lxml,它是elementtree的超集。它的toString()方法包括一个参数pretty_print-例如:
1 2 3 4 5 6 | >>> print(etree.tostring(root, pretty_print=True)) <root> <child1/> <child2/> <child3/> </root> |
号