로깅의 경우 각 함수가 함수의 시작과 끝에서 고유 한 이름을 기록하도록하고 싶습니다.파이썬에서는 함수를 장식하여 시작과 끝을 기록 할 수 있습니까?
def my_function():
print("Enter my_function")
# ...
print("Leave my_function")
기능의 이름을 변경하면 이러한 인쇄 메시지도 함께 업데이트해야합니다. 나는 이것을 자동화하는 방법을 찾고있다.
def my_decorator(func):
print("Enter ", func.__name__)
func()
print("Leave ", func.__name__)
def my_function():
# do the work
pass
# main:
my_decorator(my_function)
이 어쩌면 장식을 사용하여 간단한 방법으로 할 수 있습니까? my_function에 매개 변수가 있으면 어떻게 보이나요?
내가 이해하지 못하는 것은 정확히이 작업을 수행하는 방법을 설명 장식에 자습서 중 하나를 찾지 못했습니다 방법이다. 데코레이터의 표준 예제입니다. –
Python의 문맥 관리자 (문장 포함)를 읽고 싶을 수도 있습니다 : 그것이 그곳에있는 이유입니다. https://jeffknupp.com/blog/2016/03/07/python-with-context-managers/ – boardrider