문자열 이름을 사용하여 동적으로 함수 호출
Python에서는 특히 작업할 때 동적으로 함수를 호출해야 하는 상황에 자주 직면합니다. 모듈식 코드 또는 동적으로 생성된 함수. 이를 달성하는 한 가지 방법은 함수 이름이 포함된 문자열을 사용하는 것입니다. 예를 들어, 호출하려는 bar라는 함수가 있는 foo라는 모듈이 있을 수 있습니다.
문자열 이름을 사용하여 함수를 동적으로 호출하려면 다음과 같이 getattr 함수를 활용할 수 있습니다.
import foo func_name = "bar" bar = getattr(foo, func_name) result = bar() # calls foo.bar()
getattr 함수는 이름이 문자열로 지정된 객체의 속성을 검색합니다. 이 경우 foo 모듈에서 bar 함수를 검색합니다. 그런 다음 기본적으로 foo.bar()를 호출하는 검색된 참조(bar)를 사용하여 함수를 호출할 수 있습니다.
이 접근 방식은 동적이거나 알 수 없는 함수 이름을 처리할 때 유연성을 제공하므로 런타임 기반으로 함수를 호출할 수 있습니다. 주어진 문자열 이름에. 이는 메소드 디스패치 구현, 문자열 기반 동작 사용자 정의, 모듈 동적으로 로드 및 해당 함수 호출과 같은 시나리오에서 일반적으로 사용됩니다.
위 내용은 문자열 이름을 사용하여 Python 함수를 동적으로 호출하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!