Problème super class et **kwargs
Bonjour, j'ai donc un problème de passage d'arguments **kwargs d'une classe à une seconde. Pour mieux expliciter, voici un dummy code avec l'erreur que j'obtiens.
Code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| class Parent:
def __init__(self, age, **kwargs):
self.age = age
if 'kwargs1' and 'kwargs2' in kwargs:
self.kwargs1 = kwargs['kwargs1']
self.kwargs2 = kwargs['kwargs2']
class Child(Parent):
def __init__(self, **kwargs):
super(Child, self).__init__(**kwargs)
age = 10
My_child = Child(age, kwargs1='John', kwargs2='Robert') |
Erreur :
Code:
1 2 3 4 5 6 7 8
| ---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-76-91ce7bcdbcc5> in <module>()
14 age = 10
15
---> 16 My_child = Child(age, kwargs1='John', kwargs2='Robert')
TypeError: __init__() takes 1 positional argument but 2 were given |
J'ai fais quelques recherches mais j'avoue ne pas comprendre l'origine du problème.