Python에서 변수가 함수를 나타내는지 확인하는 방법
Python에서는 변수가 함수를 가리키는지 확인하는 것이 유용할 수 있습니다. 기능. 처음에는 isinstance(x, function) 사용을 고려할 수 있지만 Python은 정의되지 않은 함수 클래스에 대해 NameError를 발생시킵니다.
호출 가능한 객체 및 hasattr
변수는 함수이고 Python은 callable()을 제공합니다. Python 2.x 및 Python 3.2의 경우 이 메서드는 호출 가능한 개체를 확인하는 기능을 제공합니다. 또는 Python 3.x 3.2 이전의 경우 hasattr(obj, '__call__')을 사용하여 객체가 호출 가능한 객체의 __call__ 속성 특성을 가지고 있는지 검사할 수 있습니다.
types.FunctionType 관련 주의 사항 및 검사.isfunction
types.FunctionTypes 또는 검사.isfunction을 활용하는 접근 방식이 제안되었지만 이러한 방법에는 제한이 있습니다. Python이 아닌 함수에 대해서는 False를 반환합니다. C로 구현된 내장 함수는 호출 가능하더라도 이 검사에 실패합니다.
<code class="python">>>> isinstance(open, types.FunctionType) False >>> callable(open) True</code>
따라서 객체의 호출 가능 특성을 확인하려면 적합성이 아니라 호출 가능 여부를 명시적으로 확인해야 합니다. 특정 클래스 정의에 적용됩니다.
위 내용은 Python 변수가 함수를 나타내는지 어떻게 확인할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!