TypeError: __init __ () benötigt genau 1 Argument (3 angegeben) pyXML

Ich habe kürzlich angefangen zu lernen, wie man Python zum Parsen von XML-Dateien verwendet. Ich habe das Tutorial von genommenhttp://pyxml.sourceforge.net/topics/howto/node12.html

Wenn ich den folgenden Code ausführe, wird der Fehler angezeigt:

Traceback (most recent call last):
  File "C:\Users\Name\Desktop\pythonxml\tutorials\pythonxml\pyxml sourceforge\5.1 Comic Colection\SearchForComic.py", line 30, in -toplevel-
    dh = FindIssue('sandman', '62')
TypeError: __init__() takes exactly 1 argument (3 given)

Code:

from xml.sax import saxutils

class FindIssue(saxutils.DefaultHandler):
    def __init___(self, title, number):
        self.search_title, self.search_number = title, number

def startElement(self, name, attrs):
    #if it's not a comic element, ignore it
    if name!= 'comic': return

        # look for the title and number sttributes (see text)
        title = attrs.get('title', None)
        number = attrs.get('number', None)
        if (title == self.search_title and
            number == self.search_number):
                print title, '#' +str (number), 'found'

from xml.sax import make_parser
from xml.sax.handler import feature_namespaces

if __name__ == '__main__':
        #Create a parser
        parser = make_parser()

    #tell the parser that we are not interested in XML namespaces
        parser.setFeature(feature_namespaces, 0)

    #create the handler
    dh = FindIssue('sandman', '62')

    #tell the parse to use our handler
    parser.setContentHandler(dh)

    #parse the input
    parser.parse('collection.xml')

Auch in der letzten Zeile, in der ich die Datei weitergebe, befindet sie sich im aktuellen Arbeitsverzeichnis. Ist dies der richtige Weg, um die Datei anzusprechen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage