__init __ () leva exatamente 3 argumentos (1 dado)
Eu comecei a aprender Python hoje, então me desculpe se esta é uma pergunta fácil. Eu passei a última meia hora tentando corrigir o seguinte código.
class Area:
def __init__(self,width,height):
self.width = width
self.height = height
def rectangle_area(self):
area = self.width * self.height
return area
area = Area(200, 100)
print area.rectangle_area()
area = Area(250, 150)
print area.rectangle_area()
Toda vez que eu o executo, recebo as saídas 20000 e 37500, o que é bom, mas depois fico:
'__init__() takes exactly 3 arguments (1 given)'
Saída exata:
20000
37500
=> None
'__init__() takes exactly 3 arguments (1 given)'
Alguém pode ver o erro neste código?
EDITAR: Isso é do problema 3 dehttp://www.learnstreet.com/assignments/525231f376b99c634f000021/practice/5215e57f76b99c0f52000095
EDIT 2: A questão (copiar colar):
3: funçãonisso Crie uma classe Area que tenha um construtor que designará height como 100 e width como 200. Defina um método rectangle_area que retorne a área de um retângulo e uma instância de Area como área. Imprima a área do retângulo. Adicione 50 à altura e 50 à largura da instância da área. Em seguida, imprima a área do retângulo.
EDIT 3: Tornando-os opcionais, dá:
20000
37500
=> None
'Have you created two instances named area.height and area.width?'