title: Python @property versus method performance - which one to use?
body: <p>I have written some code that uses attributes of an object:</p>
  
  <pre><code>class Foo:
      def __init__(self):
          self.bar = "baz"
  myFoo = Foo()
  print (myFoo.bar)
  </code></pre>
  
  <p>Now I want to do some fancy calculation to return <code>bar</code>. I could use <code>@property</code> to make methods act as the attribute <code>bar</code>, or I could refactor my code to use <code>myFoo.bar()</code>.</p>
  
  <p>Should I go back and add parens to all my <code>bar</code> accesses or use <code>@property</code>? Assume my code base is small now but due to entropy it will increase.</p>