title: I am receiving a Type Error: int not callable when writing a method within a class which has no reserved words, or missing math operators
body: <p>I am writing a class ExerciseSession which pulls in the duration, and intensity, and then returns the calories burned in a method within. With an additional setter, the code runs properly with the initial call, but when the data is changed, it returns a Type Error - int not callable, after the setter updates the data. I'm not sure what's wrong - when I've debugged it line by line, it is changing the data properly, so the code should run. Since it DOES run the first time, I'm sure I'm missing something obvious. Here are my setter details:</p>
  <pre><code>def set_exercise(self, new_name):
      self.name = new_name
      
  def set_intensity(self, new_intensity):
      self.intensity = new_intensity
      
  def set_duration(self, new_duration):
      self.duration = new_duration 
      
  
  def calories_burned(self):
      self.calories_burned = 0
      
      if self.intensity == &quot;Low&quot;:
          self.calories_burned = str(4 * self.duration)
      
      elif self.intensity == &quot;Medium&quot;:
          self.calories_burned = str(8 * self.duration)
      
      elif self.intensity == &quot;High&quot;:
          self.calories_burned = str(12 * self.duration)       
      
      return self.calories_burned
  </code></pre>
  <p>Again - when you call a print on a change to an instance, that's when it returns the error, even though it successfully changes the data.</p>
  <p>I've reordered, defined the calories burned in the constructor, and even set a setter for calories burned, but the error remains the same. As you can see I've even tried changing the type - but then I get the Type error - str object not callable...</p>