17. Instantiate an Object


#1


https://www.codecademy.com/en/courses/python-intermediate-en-WL8e4/3/3?curriculum_id=4f89dab3d788890003000096#

I get the following error
error: Oops, try again. It looks like you didn't initialize my_triangle with valid angle values.


It should print the value "True"


class Triangle(object):
    number_of_sides=3
    def __init__(self,angle1,angle2,angle3):
        self.angle1=angle1
        self.angle2=angle2
        self.angle3=angle3
        
        
    def check_angles(self,angle1,angle2,angle3):
        if self.angle1 + self.angle2 + self.angle3==180:
            return True
        else:
            return False
        
my_triangle= Triangle("90","30","60")
print my_triangle.number_of_sides
print my_triangle.check_angles("90","30","60")


#2

my_triangle= Triangle("90","30","60")

and

print my_triangle.check_angles("90","30","60")

you surrounding your values of angles (numbers) with quotes?

Thus this will fail..
self.angle1 + self.angle2 + self.angle3==180
as comparing strings and number does not make sense.

update**
also check_angles("90","30","60") will have no arguments when you call it on my_triangle ? .


#3

Hi @teraninja78660,

You used quotes around the arguments, when there should be no quotes there ...

my_triangle= Triangle("90","30","60")

Also, the check_angles method should be designed to use the values of the instance variables instead of requiring the angle values to be passed as arguments.


#4

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.