Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬에서 함수 이름을 문자열로 가져오는 방법

파이썬에서 모든 함수는 내장 속성인 __name__을 가지고 있습니다. 이 속성에 접근하면 해당 함수의 이름을 문자열 형태로 쉽게 얻을 수 있습니다.

__name__ 속성 사용 예제

다음은 간단한 함수를 정의하고, __name__ 속성을 통해 함수 이름을 출력하는 예제입니다:

def some_func():
    return 0

print(some_func.__name__)

위 코드를 실행하면 다음과 같은 결과가 출력됩니다:

some_func

활용 사례

함수 이름을 문자열로 가져오는 기능은 다음과 같은 상황에서 유용하게 활용됩니다:

  • 디버깅 및 로깅: 로그 메시지에 현재 실행 중인 함수의 이름을 자동으로 포함시킬 수 있습니다.
  • 동적 호출: getattr() 함수와 함께 사용하여 문자열 기반으로 객체의 메서드를 동적으로 호출할 수 있습니다.
  • 데코레이터 작성: 데코레이터 내부에서 원본 함수의 정보를 확인하거나 기록할 때 사용됩니다.

참고로 클래스의 메서드 역시 동일한 방식으로 __name__ 속성을 통해 이름을 확인할 수 있으며, 람다(lambda) 함수의 경우 <lambda>라는 이름이 반환된다는 점도 알아두면 좋습니다.