Pythoni helistatav ()

Meetod callable () tagastab väärtuse True, kui edastatud objekt näib olevat helistatav. Kui ei, siis tagastab vale.

Süntaks callable()on:

 helistatav (objekt)

helistatav () parameetrid

callable() meetod võtab ühe argumendi object.

Tagastusväärtus helistatavalt ()

callable() meetod tagastab:

  • True - kui objekt on helistatav
  • False - kui objekt ei ole helistatav.

Oluline on meeles pidada, et isegi kui see nii callable()on True, võib objektile helistamine siiski ebaõnnestuda.

Kuid callable()naasmise Falsekorral objektile helistamine kindlasti ebaõnnestub.

Näide 1: Kuidas helistatav () töötab?

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

Väljund

 Vale Õige

Siin ei saa objekti x välja kutsuda. Ja objekt y tundub olevat helistatav (kuid ei pruugi olla helistatav).

Näide 2: helistatav objekt

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

Väljund

 Tõsi

FooTundub, et klassi eksemplar on helistatav (ja on antud juhul helistatav).

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

Näide 3: Objekt näib olevat helistatav, kuid pole helistatav.

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

Väljund

 Tõsi

FooTundub, et klassi eksemplar on helistatav, kuid see pole helistatav. Järgmine kood tekitab tõrke.

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

Väljund

 True Traceback (viimane kõne viimati): fail "", rida 10, TypeError: objekti "Foo" ei saa kutsuda 

Huvitavad Artiklid...