使用“if”作为参数标识符

时间:2015-04-22 07:16:34

标签: python lxml

我想生成以下xml文件:

<foo if="bar"/>

我试过这个:

from lxml import etree
etree.Element("foo", if="bar")

但我收到了这个错误:

page = etree.Element("configuration", if="ok")
                                       ^
SyntaxError: invalid syntax

有什么想法吗?

我正在使用python 2.7.9和lxml 3.4.2

2 个答案:

答案 0 :(得分:7)

etree.Element("foo", {"if": "bar"})

属性可以作为dict传递:

from lxml import etree

root = etree.Element("foo", {"if": "bar"})

print etree.tostring(root, pretty_print=True)

输出

<foo if="bar"/>

答案 1 :(得分:-2)

'if'是Python中的保留字,这意味着您不能将其用作标识符。