Metode callable () atgriež vērtību True, ja nodotais objekts šķiet izsaucams. Ja nē, tas atgriež False.
Sintakse callable()ir:
izsaucams (objekts)
izsaucamie () parametri
callable() metode prasa vienu argumentu object.
Atgriezeniskā vērtība no izsaucamā ()
callable() metode atgriež:
True- ja objekts šķiet izsaucamsFalse- ja objekts nav izsaucams.
Ir svarīgi atcerēties, ka, pat ja tā callable()ir True, zvans uz objektu joprojām var neizdoties.
Tomēr, ja callable()atgriezīsies False, izsaukums uz objektu noteikti neizdosies.
1. piemērs: cik izsaucams () darbojas?
x = 5 print(callable(x)) def testFunction(): print("Test") y = testFunction print(callable(y))
Rezultāts
Nepatiesa Patiesība
Šeit objekts x nav izsaucams. Šķiet, ka objekts y ir izsaucams (bet var nebūt izsaucams).
2. piemērs: izsaucamais objekts
class Foo: def __call__(self): print('Print Something') print(callable(Foo))
Rezultāts
Patiesi
Šķiet, ka Fooklases gadījums ir izsaucams (un šajā gadījumā ir izsaucams).
class Foo: def __call__(self): print('Print Something') InstanceOfFoo = Foo() # Prints 'Print Something' InstanceOfFoo()
3. piemērs: objekts, šķiet, ir izsaucams, bet nav izsaucams.
class Foo: def printLine(self): print('Print Something') print(callable(Foo))
Rezultāts
Patiesi
Šķiet, ka Fooklases gadījums ir izsaucams, taču tas nav izsaucams. Šis kods radīs kļūdu.
class Foo: def printLine(self): print('Print Something') print(callable(Foo)) InstanceOfFoo = Foo() # Raises an Error # 'Foo' object is not callable InstanceOfFoo()
Rezultāts
True Traceback (pēdējais zvans pēdējais): Fails "", 10. rinda, TypeError: objekts 'Foo' nav izsaucams








