Как я могу создать объект, одновременно передав ему __init__
все ключевые слова и их значения другого объекта? В основном это:
class Person():
instances = []
def __init__(self,**kwargs):
self.__dict__.update(**kwargs)
__class__.instances.append(self)
class TemplatePerson():
instances = []
def __init__(self,**kwargs):
self.__dict__.update(**kwargs)
__class__.instances.append(self)
def foo(template):
# I want this function to basically execute what would be:
# Person(name="Alice",surname="Bobbette")
# except dynamically for all the keywords and values the template object could have
pass
foo(TemplatePerson(name="Alice",surname="Bobbette"))
Я наткнулся на __dict__
, но не знаю, как его использовать. Важно, чтобы все ключевые слова передавались новому объекту при его инициализации, а не делать что-то вроде:
Person.name="Alice"
Person.surname="Bobbette
, потому что мой Person.__init__
беспорядок;)
Заранее спасибо.