def dict2xml(data):
"""Convert dict to xml document."""
document = Document()
def create_node(root, node_data):
for key, val in node_data.items():
node = document.createElement(key)
if isinstance(val, dict):
attrs = val.pop('__attrs__', {})
for attr, attr_val in attrs.items():
node.setAttribute(attr, attr_val)
create_node(node, val)
elif isinstance(val, (tuple, list)):
for sub_data in val:
create_node(node, sub_data)
else:
node.appendChild(document.createTextNode(str(val)))
root.appendChild(node)
create_node(document, data)
return document.childNodes[0].toxml()
评论列表
文章目录