Python 使用';类别';属性抛出语法错误

Python 使用';类别';属性抛出语法错误,python,lxml,Python,Lxml,当我尝试使用lxml模块执行此操作时: div = etree.SubElement(body, "div", class="hmi") 我得到一个: user@localhost:metk $ sudo python mbscan.py -r 192.168.0.0/24 --hmi File "mbscan.py", line 481 div = etree.SubElement(body, "div", class="hmi")

当我尝试使用
lxml
模块执行此操作时:

div = etree.SubElement(body, "div", class="hmi")
我得到一个:

user@localhost:metk $ sudo python mbscan.py -r 192.168.0.0/24 --hmi
  File "mbscan.py", line 481
    div = etree.SubElement(body, "div", class="hmi")
                                            ^
SyntaxError: invalid syntax
因为类是为Python保留的关键字,用于其他用途。例如:

div = etree.SubElement(body, "div", hello="hmi")
很好

我知道在
lxml
中有另一个专门为
html
制作的引擎,但是为了使我的
xml
html
报表生成器尽可能相似,我想知道这里是否还有其他解决方法


如何创建带有
class
属性的
xml
标记而不打乱Python?

定义属性字典并将其作为
attrib
参数传递

例如:

>>> from lxml.html import Element, tostring
>>> 
>>> div = Element("div", attrib={"class": "hmi"})
>>> 
>>> print(tostring(div))
<div class="hmi"></div>
来自lxml.html导入元素tostring的
>
>>> 
>>>div=元素(“div”,attrib={“类”:“hmi”})
>>> 
>>>打印(tostring(div))
注意,我在这里使用的是
lxml.html
,但同样的想法也适用于
etree