Есть ли короткий способ создать экземпляр класса с помощью параметров конструктора?

Я использую Python 3.4

class baba():
  def __init__(self,a,b,c,d,e,f,g):
     self.a = a
     self.b = b
     self.c = c
     self.d = d
     self.e = e
     self.f = f
     self.g = g

Есть ли более короткий способ написать это? Кроме того, чтобы получить все это как диктат

1 ответ

Решение

Ты можешь использовать **kwargsзатем используйте setattr чтобы создать атрибуты вашего экземпляра:

class baba():
    def __init__(self, **kwargs):
        for i in kwargs:
            setattr(self, i, kwargs[i])

b = baba(a=1,b=2,c=4,d=5)
print(b.a) # prints 1
Другие вопросы по тегам