当前位置:网站首页>Typeerror: Super () takes at least 1 argument (0 given)

Typeerror: Super () takes at least 1 argument (0 given)

2022-01-15 02:37:05 Les programmeurs ont évolué sans perte de cheveux!

python3Fonctionnement normal àpython2Il y a eu une erreur,Le Code d'erreur est le suivant

class MyLogging(logging.Logger):
    def __init__(self, name, level=logging.INFO, file=None, hint_show=True):
        """ :param name: Nom du Journal :param level: Niveau :param file: Nom du fichier journal :param hint_show: Conseils de la console de log(Par défautTrue Auto on) """
        # SuccessionloggingDans le module Logger Catégorie,Parce qu'il y a toutes sortes de façons de,Très complet,Mais l'initialisation est simple
        # Donc nous devons hériter et ensuite optimiser l'initialisation,Devenez ce que vous voulez.
        super().__init__(name, level) #C'est une erreur

Solutions:
Modifier comme suit:

super(MyLogging,self).__init__(name, level)

Exemple de référence(1.Héritage uniquesuper()Et__init__()Fonctions réalisées)

class Base(object):
    def __init__(self):
        print 'Base create'
 
class childA(Base):
    def __init__(self):
        print 'creat A ',
        Base.__init__(self)
 
 
class childB(Base):
    def __init__(self):
        print 'creat B ',
        super(childB, self).__init__()
 
base = Base()
 
a = childA()
b = childB()
 
#Produits:
 
Base create
creat A  Base create
creat B  Base create

Analyse détailléePorte de transfert

版权声明
本文为[Les programmeurs ont évolué sans perte de cheveux!]所创,转载请带上原文链接,感谢
https://chowdera.com/2022/01/202201080602069170.html

随机推荐