Andrea Crotti
2009-04-23 08:53:29 UTC
Non capisco perché a volte usando super ottengo appunto
TypeError: super() argument 1 must be type, not classobj
mentre a volte funziona tutto
class ParamikoFilter(logging.Filter):
def __init__(self, name=None):
""" By default everything is left passing"""
super(ParamikoFilter, self).__init__(name)
Cosa c'è di sbagliato in questo? Gli passo una classe e l'oggetto
stesso, dovrebbe andare a chiamarmi l'init di logging.Filter no?
E tra l'altro non sarebbe stato più carino se di default super
provasse a trovare lo stesso metodo ma nella classe superiore?
Tipo
def __init__(self,name):
super(name)
richiamasse l'__init__ della classe superiore?
(mi pare che in java fosse così)
TypeError: super() argument 1 must be type, not classobj
mentre a volte funziona tutto
class ParamikoFilter(logging.Filter):
def __init__(self, name=None):
""" By default everything is left passing"""
super(ParamikoFilter, self).__init__(name)
Cosa c'è di sbagliato in questo? Gli passo una classe e l'oggetto
stesso, dovrebbe andare a chiamarmi l'init di logging.Filter no?
E tra l'altro non sarebbe stato più carino se di default super
provasse a trovare lo stesso metodo ma nella classe superiore?
Tipo
def __init__(self,name):
super(name)
richiamasse l'__init__ della classe superiore?
(mi pare che in java fosse così)