Python asignando dos variables en una línea

class Domin(): def __init__(self , a, b) : self.a=a , self.b=b def where(self): print 'face : ' , self.a , "face : " ,self.b def value(self): print self.a + self.b d1=Domin(1 , 5) d1=Domin(20 , 15) 

Me sale este error:

 Traceback (most recent call last): File "test2.py", line 13, in  d1=Domin(1 , 5) File "test2.py", line 5, in __init__ self.a=a , self.b=b TypeError: 'int' object is not iterable 

No puedes poner dos afirmaciones en una línea como esa. Tu código está siendo evaluado así:

 self.a = (a, self.b) = b 

O use un punto y coma (pensándolo bien, no haga eso):

 self.a = a; self.b = b 

O use la secuencia de desembalaje:

 self.a, self.b = a, b 

O simplemente dividirlo en dos líneas:

 self.a = a self.b = b 

Lo haría de la última manera.