我没有使用lxml来创建xml,所以我有点迷茫。我可以创建一个函数,创建一个元素:
from lxml import etree as ET
from lxml.builder import E
In [17]: def func():
...: return E("p", "text", key="value")
In [18]: page = (
...: E.xml(
...: E.head(
...: E.title("This is a sample document")
...: ),
...: E.body(
...: func()
...:
...: )
...: )
...: )
In [19]: print ET.tostring(page,pretty_print=True)
<xml>
<head>
<title>This is a sample document</title>
</head>
<body>
<p key="value">text</p>
</body>
</xml>
我怎样才能使功能添加多个元素?例如,我想func(3)
创建 3 个新段落。如果 func 重新生成一个列表,我会得到一个 TypeError。