title: Python Decoration - Keep the original function
body: <p>Let <strong>f</strong> be a function.
  In a simple decoration of <strong>f</strong>, <strong>f</strong> is replaced by wrapper(<strong>f</strong>).
  What if I want to keep the original <strong>f</strong> (and)
  define a new function <strong>g</strong> s.t. <strong>g</strong> = wrapper(<strong>f</strong>)
  i.e. I want to not only wrapper(<strong>f</strong>), but also to keep <strong>f</strong> itself.</p>
  <p>Can I do it using the @ notation?
  Thanks in advance!</p>