데코레이터를 사용할 때 functools.wraps()를 사용하는 이유는!
사용하나 안하나 결과를 동일하지만!!!
파이썬 코드에서 데코레이터를 사용한다면,
디버깅을 위해서 functools.wraps 모듈을 사용!
결과의 차이는 없으나~~~ __name__과 __doc__값은 차이가 있다! ~~~
This is a convenience function for invoking update_wrapper()
as a function decorator when defining a wrapper function.
It is equivalent topartial(update_wrapper, wrapped=wrapped, assigned=assigned, updated=updated).
Without the use of this decorator factory,
the name of the example function would have been 'wrapper',
and the docstring of the original example() would have been lost.