Metoden, der kan kaldes () returnerer Sand, hvis objektet, der er sendt, ser ud til at kunne kaldes. Hvis ikke, returnerer den Falsk.
Syntaksen for callable()
er:
kaldbar (objekt)
callable () Parametre
callable()
metode tager et enkelt argument object
.
Returneringsværdi fra opkaldelig ()
callable()
metode returnerer:
True
- hvis objektet ser ud til at kunne kaldesFalse
- hvis objektet ikke kan kaldes.
Det er vigtigt at huske, at opkald til objektet stadig kan mislykkes , selvom det callable()
er tilfældet True
.
Men hvis du callable()
vender tilbage False
, vil opkald til objektet helt sikkert mislykkes.
Eksempel 1: Hvordan callable () fungerer?
x = 5 print(callable(x)) def testFunction(): print("Test") y = testFunction print(callable(y))
Produktion
Falsk sandt
Her kan objektet x ikke kaldes. Og objektet y ser ud til at kunne kaldes (men kan muligvis ikke kaldes).
Eksempel 2: Objekt, der kan kaldes
class Foo: def __call__(self): print('Print Something') print(callable(Foo))
Produktion
Sand
Forekomsten af Foo
klasse ser ud til at kunne kaldes (og kan kaldes i dette tilfælde).
class Foo: def __call__(self): print('Print Something') InstanceOfFoo = Foo() # Prints 'Print Something' InstanceOfFoo()
Eksempel 3: Objekt synes at kunne kaldes, men kan ikke kaldes.
class Foo: def printLine(self): print('Print Something') print(callable(Foo))
Produktion
Sand
Forekomsten af Foo
klasse ser ud til at kunne kaldes, men den kan ikke kaldes. Den følgende kode vil medføre en fejl.
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 (seneste opkald sidst): Fil "", linje 10, i TypeError: 'Foo' objekt kan ikke kaldes