无法在类中调用xml.dom.minidom.parse

时间:2016-07-15 15:54:04

标签: python xml minidom

我无法在课堂上致电xml.dom.minidom.parse()

作为一个纯粹的例子,

class XmlReader:
   def __init__(self, xml):
      self.xml = xml 
      DOMTree = xml.dom.minidom.parse("test.xml")

xmlReader = XmlReader("test.xml")

抛出

File "handler2.py", line 10, in ?
    xmlReader = XmlReader("test.xml")
  File "handler2.py", line 8, in __init__
    DOMTree = xml.dom.minidom.parse("test.xml")
AttributeError: 'str' object has no attribute 'dom'

但是我可以在外面调用xml.dom.minidom.parse就好了。

为了能够在我的XmlReader类中调用该函数,我需要更改什么?

1 个答案:

答案 0 :(得分:3)

在构造函数中,xml引用参数 xml而不是模块 xml。这称为 shadowing 。为其中一个选择一个不同的名称。

import xml as xml_module

from xml.dom import minidom

def __init__(self, xml_data):