메서드 매개변수 이름 얻기
다음과 같이 정의된 함수가 있는 경우:
def a_method(arg1, arg2): pass
인수 이름을 검색하는 방법 ("arg1", "arg2")?
검사 모듈 사용
검사 모듈을 사용하면 코드 객체를 검사하고 해당 속성을 검색할 수 있습니다. a_method의 인수 이름을 얻으려면 Inspection.getfullargspec()을 사용하십시오.
>>> inspect.getfullargspec(a_method) (['arg1', 'arg2'], None, None, None)
결과는 인수 이름과 인수 및 *의 이름과 같은 추가 정보로 구성됩니다. kwargs 변수 및 해당 기본값.
def foo(a, b, c=4, *arglist, **keywords): pass >>> inspect.getfullargspec(foo) (['a', 'b', 'c'], 'arglist', 'keywords', (4,))
사용 Inspection.signature()
Python 3.3 이상에서는 Inspect.signature()를 사용하여 호출 가능 객체의 호출 서명을 얻을 수 있습니다.
>>> inspect.signature(foo) <Signature (a, b, c=4, *arglist, **keywords)>
이는 다음을 제공합니다. 매개변수 유형 및 기본값을 포함한 더 자세한 서명.
참고: Python의 일부 호출 가능 항목 특히 CPython의 C에 정의된 경우에는 내부 조사가 불가능할 수 있습니다. 이러한 경우 Inspection.getfullargspec()은 ValueError를 발생시킵니다.
위 내용은 Python에서 메소드 매개변수 이름을 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!