Funkcia isinstance () kontroluje, či je objekt (prvý argument) inštanciou alebo podtriedou triedy classinfo (druhý argument).
Syntax isinstance()
je:
isinstance (object, classinfo)
isinstance () parametre
isinstance()
má dva parametre:
- objekt -
object
treba skontrolovať - classinfo - trieda, typ alebo n-tica tried a typov
Návratová hodnota z inštancie ()
isinstance()
vracia:
True
ak je objekt inštanciou alebo podtriedou triedy alebo ľubovoľného prvku n-ticeFalse
inak
Ak classinfo nie je typ alebo n-tica typov, vyvolá sa TypeError
výnimka.
Príklad 1: Ako funguje isinstance ()?
class Foo: a = 5 fooInstance = Foo() print(isinstance(fooInstance, Foo)) print(isinstance(fooInstance, (list, tuple))) print(isinstance(fooInstance, (list, tuple, Foo)))
Výkon
Pravda Nepravda Pravda
Príklad 2: Práca isinstance () s natívnymi typmi
numbers = (1, 2, 3) result = isinstance(numbers, list) print(numbers,'instance of list?', result) result = isinstance(numbers, dict) print(numbers,'instance of dict?', result) result = isinstance(numbers, (dict, list)) print(numbers,'instance of dict or list?', result) number = 5 result = isinstance(number, list) print(number,'instance of list?', result) result = isinstance(number, int) print(number,'instance of int?', result)
Výkon
(1, 2, 3) inštancia zoznamu? Pravdivá (1, 2, 3) inštancia diktátu? Falošná (1, 2, 3) inštancia diktátu alebo zoznamu? Pravda 5 príkladov zoznamu? Falošná 5 inštancia int? Pravdaže