这是我的代码的一部分:
class MyXmlParser(object):
...
def parseXML(self):
if self.attrib:
...
但是有了这个,我在第一行就出现了错误:AttributeError:'MyXmlParser'对象没有属性'attrib'。
我真的不确定如何解决这个问题。谢谢。
问题是你没有访问etree
上的属性,但是在你的类中,所以我改变了代码来迭代你的变量doc
上解析的数据,并使用你的代码打印带有属性的元素,为此目的如下代码完成工作:
import xml.etree.ElementTree as ET
class MyXmlParser(object):
def parseXML(self):
for elem in self.doc.iter():
if elem.attrib:
...
还将etree
的导入更改为负责解析XML文件的ElementTree
。
你正在调用你班级的未知属性。定义它,它应该工作。
Self.attrib是指当前对象(您的解析器)的属性attrib,它从未定义或初始化。