파이썬 호출 가능()

ItsMyCode |

Python의 callable() 함수는 전달된 개체가 호출 가능한 것으로 나타나면 True를 반환합니다. 그렇지 않으면 False 를 반환합니다.

callable() 구문


callable() 메서드의 구문은 다음과 같습니다.

**callable(object)**


callable() 매개변수


callable() 메서드는 하나의 인수, 즉 객체만 사용할 수 있습니다.

callable() 반환 값


callable() 함수가 다음을 반환합니다.
  • True – 객체가 호출 가능한 것으로 나타나는 경우
  • False – 객체를 호출할 수 없는 경우.

  • 참고: callable()가 True 를 반환하는 경우가 거의 없을 수 있지만 개체 호출이 실패할 수 있습니다. 그러나 callable()가 False를 반환하는 경우 호출 개체는 성공하지 못합니다.

    예제 1: callable()은 어떻게 작동합니까?



    여기서 개체number는 호출할 수 없습니다. 그리고 개체getData가 호출 가능한 것으로 나타납니다(그러나 호출 가능하지 않을 수 있음).

    # returns false as the object of integer is not callable
    number = 10
    print(callable(number))
    
    def getData():
      print("Hello World")
    
    # returns true as the variable is callable
    obj = getData
    print(callable(obj))
    


    산출

    False
    True
    


    예 2: 개체를 호출할 수 있는 경우



    기본 제공callable() 메서드는 전달된 인수가 아래 두 가지 경우 중 하나인지 확인합니다.
  • ` __call_ `_ 메서드가 있는 클래스의 인스턴스.
  • 함수, 메서드 등과 같이 호출 가능성을 나타내는 유형이거나 null이 아닌tp_call (c struct) 멤버가 있습니다.

  • # Python program to demonstrate callable()
    class Test:
      def __call__ (self):
        print('Hello World !!!')
    
    # Suggests that Test class is callable and returns True
    print(callable(Test))
    
    # This proves that class is callable
    TestObject = Test()
    TestObject()
    


    산출

    True
    Hello World !!!
    


    예 3: 개체를 호출할 수 없는 경우


    callable() 메서드는 True 를 반환하여 Test 클래스를 호출할 수 있지만 Test ** 인스턴스는 호출할 수 없으며 **TypeError: 'Test' 개체를 호출할 수 없음을 반환합니다.

    # Python program to demonstrate NOT callable()
    class Test:
      def printdata(self):
        print('Hello World !!!')
    
    # Suggests that Test class is callable and returns True
    print(callable(Test))
    
    # The object will be created but returns error while calling
    TestObject = Test()
    TestObject()
    


    산출

    True
    
    Traceback (most recent call last):
      File "c:\Projects\Tryouts\main.py", line 11, in <module>
        TestObject()
    TypeError: 'Test' object is not callable
    


    게시물 Python callable()ItsMyCode에 처음 나타났습니다.

    좋은 웹페이지 즐겨찾기