title: what is the exact difference between return a class and a object
body: <p>Please guide to an explain of the difference between 
  object = class()
  and 
  var = class method returning a class:</p>
  
  <pre><code>class Countsome(object):
      @classmethod
      def get(cls, x, y):
          self = cls()
          sum = self.add2(x, y)
          print sum
          return cls
  
      def add2(self, x, y):
          sum = x+y
          return sum
  
  xyz = Countsome.get(5, 9)
  </code></pre>
  
  <p>==========================================</p>
  
  <pre><code>class CountSome(object):
      def __init__(self):
          pass
  
      def add2(self, x, y):
          sum = x+y
          print sum
  
  
  xyz = CountSome()
  xyz.add2(5, 9)
  </code></pre>
  
  <p>Looking to understand where I should use one, I am just printing the sum so not returning, so please assume I am asking this question for these kind of tasks(where returning results like sum is not important).
  And looking for answers like, which one would be efficient, when.</p>
  
  <p>What are the benefits of each and scenarios best suited for each. Guide to a source if possible</p>