0

私はPythonが初めてです。私はPythonでXMLを解析するプロジェクトに取り組んでおり、そうするための私のPythonコードは次のとおりです:

from xml.dom import minidom
from copy import copy

class Xmlparse:


    def __init__(self, xmlfile):
        self = minidom.parse(xmlfile)

    def findadress(self):
        itemlist =self.getElementsByTagName('addresses')
        return itemlist[0].attributes['firstname'].value


if __name__ == '__main__':
    with open("sample.xml") as f:

        parse = Xmlparse(f)
        print parse.findadress()

しかし、このコードを実行すると、出力エラーが発生します。

AttributeError: Xmlparse instance has no attribute 'findadress'

そして、findaddress関数はメインで正しく綴られていますが、何らかの理由でこのエラーが発生しています。

どんな助けでも本当に感謝しています。

また、PythonでXSDスキーマを使用してxmlを検証するにはどうすればよいですか?

4

2 に答える 2

0

悪はself = minidom.parse(xmlfile)

于 2013-02-17T20:40:01.490 に答える
0

「self = minidom.parse(xmlfile)」は、作成したばかりの Xmlparse オブジェクトを上書きします。代わりに、xml doc を変数に代入します。

from xml.dom import minidom
from copy import copy

class Xmlparse:

    def __init__(self, xmlfile):
        self.doc = minidom.parse(xmlfile)

    def findadress(self):
        itemlist =self.doc.getElementsByTagName('addresses')
        return itemlist[0].attributes['firstname'].value
于 2013-02-17T21:21:36.703 に答える