title: Python shell shows no error but program doesn't run
body: <p>I wrote this program to learn the basics of OOP. When I run this program from IDLE in the Python Shell it doesn't show any errors but also doesn't print anything... I'm not sure how to go about figuring out what my errors are.</p>
  
  <p>Here's my code: </p>
  
  <pre><code>class Shapes(object):
      def __init__(self, width, length):
          object.__init__(self)
          self.setWidth(width)
          self.setLength(length)
  
      def getWidth(self):
          return self.width
  
      def setWidth(self, width):
          if (width &lt;= 0):
              width = 5
          else:
              width = self.width
  
      def getLength(self):
          return self.length
  
      def setLength(self, length):
          if (length &lt;= 0):
              length = 10
          else:
              length = self.length
  
  class Rectangle(Shapes):
      def __init__(self, area, perimeter):
          Shapes.__init__(self, length, width)
  
      def getArea(length, width):
          return length * width
  
      def getPerimeter(length, width):
          return (length * 2) + (width * 2)
  
      def getStats(self):
          print("Area: {}".format(self.getArea()))
          print("Perimeter: {}".format(self.getPerimeter()))
          print("Length: {}".format(self.getLength()))
          print("Width: {}".format(self.getWidth()))
  
  
  def main():
      print("Rectangle a: ")
      a = Rectangle(5, 7)
      print("Area:          {}".format(a.area))
      print("Perimeter:     {}".format(a.perimeter))
  
      print( " ")
      print("Rectangle b: ")
      b = Rectangle()
      b.width = 10
      b.height = 20
      print(b.getStats())
  </code></pre>
  
  <p>Here's what the Shell is doing, if you want to look:
  <a href="http://imgur.com/DxyUZyY" rel="nofollow">http://imgur.com/DxyUZyY</a></p>
  
  <p>What am I doing wrong and how can I correct this?</p>