2010-02-12 9 views
19

Permítanme comenzar diciendo que también recibo el mismo error whey que define __init__ y ejecuta super() 's __init__. Solo lo simplifiqué a este método personalizado para ver si el error aún sucedía.excepción extraña de Python. ¿He encontrado mi primer error de Python o es este un error novato?

import HTMLParser 

class Spider(HTMLParser): 
    """ 
    Just a subclass. 
    """ 

Esto por sí solo en un módulo plantea el siguiente error:

Traceback (most recent call last): 
    File "D:\my\path\to\my\file 
    class Spider(HTMLParser): 
TypeError: Error when calling the metaclass bases 
    module.__init__() takes at most 2 arguments (3 given) 
+10

que votaron para cerrar El hecho de que esta pregunta es fácil de responder, doesn? Esto significa que no tiene ninguna justificación. La excepción de Python claramente no fue muy útil. No debe subclasificar un módulo, por lo que es mejor que Python diga "Este error se debe a la subclasificación incorrecta de un módulo". no es un error novato tener un error tipográfico o error de importación. – orokusaki

+1

No hay un mejor mensaje de depuración definitivamente. –

Respuesta

33

Y la respuesta es que soy un novato completa. Este es un módulo, no una clase, pero dejaré esto aquí en caso de que otros noobs se topen con el mismo problema.

Solución:

from HTMLParser import HTMLParser 

Cada vez que pienso que estoy empezando a convertirse en un profesional, sucede algo como esto :(

+3

No lo sé, yo co De hecho, vemos que esto hace tropezar a mucha gente, teniendo el módulo y la clase dentro del módulo con el mismo nombre. – BigBeagle

+6

Creo que hay un amplio rango de existencia entre 'noob completo 'y' pro'. – MattH

+0

(eliminó un conjunto de comentarios con múltiples indicadores de múltiples usuarios; fuera del tema de la pregunta) –

Cuestiones relacionadas