The following are links to additional questions that our community has asked about this exercise:
This list will contain other frequently asked questions that aren’t quite as popular as the ones above.
Currently there have not been enough questions asked and answered about this exercise to populate this FAQ section.
This FAQ is built and maintained by you, the Codecademy community – help yourself and other learners like you by contributing!
Not seeing your question? It may still have been asked before – try searching for it by clicking the spyglass icon () in the top-right of this page. Still can’t find it? Ask it below by hitting the reply button below this post ().
Why does the method check_angles only take the argument self (i.e. def check_angles(self): ) as opposed to the three angles (i.e. def check_angles(self, angle1, angle2, angle3):). Is it because the angles must be provided to exist in the triangle class?
Additionally, why is it not possible to use:
if angle1 + angle2 + angle 3 == 180
as opposed to:
if (self.angle1 + self.angle2 + self.angle3) == 180:
since we previously defined self.angle = angle in the init() ?
Because self is the context of the angles for that instance. We don’t need to pass them in, only access the instance variables.
Those variables do not exist in the context of the instance. When we first create the instance the variables are available, but if we return to the method at some time later, they will not. Only their self.attributes still exist.
For this exercise, I have created the Triangle class and the check_angles class method. I have also created the number_of_sides member variable, which according to this, is in the correct place. Here is my code:
When I select ‘Run’, no error appears, but the ‘Next’ button is not enabled. After multiple attempts at ‘Run’, I am asked whether I want to view the solution.
Because no error is displayed in either the console or in tooltip form, how can I improve my code, if it is indeed wrong?
Yes, I believe you’re correct. But shouldn’t that produce an indentationError in the console? This is very difficult to spot and especially if you don’t go full-screen in the editor.
OK, thanks. Ultimately, I would have expected the error to get passed to something further down the exception stack so that at least something is displayed in the console. Perhaps because there is no actual error in the end, and the program simply runs then stops, it is one of those few exceptional circumstances where the codecademy tooltip may have to intervene to guide the user. In this situation, even viewing the solution and comparing it visually, it may not be immediately clear to the user.
That will be for the CC curriculum team. We have no hand in the lessons, only the questions that are asked in the forums.
Tell me, what happened when you ran the method on your instance?
Belay. I’ve run the check…
Traceback (most recent call last):
File "C:/Users/Mr/AppData/Local/Programs/Python/Python38/Scripts/triangle_class.py", line 16, in <module>
print (equilateral.check_angles())
AttributeError: 'Triangle' object has no attribute 'check_angles'
Good day everyone,
Could someone have a look at the screenshot of the code? I do not understand the error that pops up. In the console I have an output True, if you change the values, it gives False, but neverthless it sees it as an error.