Python kallas ()

Metoden callable () returnerar True om objektet som skickas verkar kallas. Om inte, returnerar den False.

Syntaksen för callable()är:

 kallbar (objekt)

callable () Parametrar

callable() metoden tar ett enda argument object.

Returvärde från callable ()

callable() metoden returnerar:

  • True - om objektet verkar kallas
  • False - om objektet inte kan anropas.

Det är viktigt att komma ihåg att även om det callable()är så Truekan samtalet till objektet fortfarande misslyckas.

Men om du callable()returnerar Falsekommer samtalet till objektet verkligen att misslyckas.

Exempel 1: Hur callable () fungerar?

 x = 5 print(callable(x)) def testFunction(): print("Test") y = testFunction print(callable(y))

Produktion

 Falsk sann

Här kan inte objektet x kallas. Och objektet y verkar kunna kallas (men kanske inte kan kallas).

Exempel 2: Callable Object

 class Foo: def __call__(self): print('Print Something') print(callable(Foo))

Produktion

 Sann

Förekomsten av Fooklass verkar vara anropbar (och kan anropas i det här fallet).

 class Foo: def __call__(self): print('Print Something') InstanceOfFoo = Foo() # Prints 'Print Something' InstanceOfFoo()

Exempel 3: Objekt verkar kunna kallas men kan inte kallas.

 class Foo: def printLine(self): print('Print Something') print(callable(Foo))

Produktion

 Sann

Förekomsten av Fooklass verkar vara anropbar men den kan inte anropas. Följande kod ger upp ett fel.

 class Foo: def printLine(self): print('Print Something') print(callable(Foo)) InstanceOfFoo = Foo() # Raises an Error # 'Foo' object is not callable InstanceOfFoo()

Produktion

 True Traceback (senaste samtalet senast): Fil "", rad 10, i TypeError: "Foo" -objektet kan inte anropas 

Intressanta artiklar...