Python 함수 내에서 매개변수 이름 검색
Python에서 함수의 매개변수를 검사하는 것은 다양한 목적에 유용할 수 있습니다. 일반적인 질문 중 하나는 주어진 함수에 대한 매개변수 이름 목록을 프로그래밍 방식으로 얻는 방법입니다.
내장 Python 메서드
inspect 모듈은 다음에 대한 포괄적인 검사 기능을 제공합니다. 함수를 포함한 Python 객체. 그러나 매개변수 정보를 검색하는 데 자주 사용되는spect.getargspec() 및 Inspection.signature() 메서드는 Python 3.10 이상 버전에서 더 이상 사용되지 않습니다.
함수 메타데이터를 사용한 대체 접근 방식
다행히 기본 기능을 활용하는 대체 접근 방식이 있습니다. 메타데이터:
<code class="python">def list_parameter_names(func): """Returns a list of parameter names for a given function.""" # Get the function's code object. code = func.__code__ # The co_varnames attribute contains a tuple of parameter names. return code.co_varnames</code>
이 코드 조각은 함수를 인수로 사용하고 해당 매개변수 이름 목록을 반환하는 재사용 가능한 함수인 list_parameter_names()를 정의합니다.
사용 예
다음은 사용 방법을 보여주는 예입니다. list_parameter_names() 함수:
<code class="python">def my_function(a, b, c): ... parameter_names = list_parameter_names(my_function) print(parameter_names) # Output: ['a', 'b', 'c']</code>
추가 고려 사항
이 메서드는 수정할 수 없는 불변 개체인 함수의 코드 개체에 의존합니다. 이는 생성 후 함수의 매개변수 목록에 대한 모든 변경사항이 이 방법을 통해 얻은 매개변수 이름에 반영되지 않음을 의미합니다.
위 내용은 Python 함수의 매개변수 이름 목록을 얻는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!