Функција Питхон исинстанце() се користи за проверу да ли је дати објекат инстанца те класе. Ако објекат припада класи, враћа Труе. У супротном враћа Фалсе. Такође враћа труе ако је класа поткласа.
Функција исинстанце() узима два аргумента објекат и цлассинфо и враћа или Тачно или Нетачно. Потпис функције је дат у наставку.
Синтакса:
isinstance(object, classinfo)
Параметерс
објекат: То је објекат стринг, инт, флоат, лонг или прилагођеног типа.
цлассинфо: Назив класе.
Повратак
Враћа логички или Тачно или Нетачно.
Хајде да видимо неке примере функције исинстанце() да бисмо разумели њену функционалност.
Примери Питхон Исинстанце():
Користимо функцију исинстанце() да проверимо да ли су различите варијабле инстанце њихових засебних типова података или класа.
1. Интегер
Код
претворити инт у стринг јава
# Check if an integer is an int n = 100 print(isinstance(n, int))
Излаз:
True
2. Флоат
Код
# Check if a float is a float pi = 3.14159 print(isinstance(pi, float))
Излаз:
True
3. Стринг
Код
# Check if a string is a string name = 'Johnny' print(isinstance(name, str))
Излаз:
True
4. Листа
Код
конвертовати стринг до датума
# Check if a list is a list colours = ['blue', 'black', 'brown'] print(isinstance(colours, list))
Излаз:
True
5. Речник
Код
# Check if a dictionary is a dict person = {'name': 'Ayan', 'age': 30} print(isinstance(person, dict))
Излаз:
торцх инсталл
True
6. Тупле
Код
# Check if a tuple is a tuple point = (1, 5) print(isinstance(point, tuple))
Излаз:
True
7. Сет
Код
# Check if a set is a set digits = {1, 2, 3, 4,5,6,7,8} print(isinstance(digits, set))
Излаз:
True
8. Цласс
Код
# Check if a custom class instance is an instance of that class class Bike: pass my_bike = Bike() print(isinstance(my_bike, Bike))
Излаз:
True
Хајде да видимо још неколико примера функције исинстанце() да бисмо разумели њену функционалност.
Пример функције Питхон исинстанце() 1
Овде прослеђујемо објекат и класу функцији која враћа Труе само ако објекат припада класи. Погледајте пример у наставку.
Код
# Python isinstance() function example class Student: id = 101 name = 'John' def __init__(self, id, name): self.id=id self.name=name student = Student(1010,'John') lst = [ 12,34,5,6,767 ] # Calling function print(isinstance(student, Student)) # isinstance of Student class print(isinstance(lst, Student))
Излаз:
True False
Пример 2 функције Питхон исинстанце().
исинстанце() се може користити за проверу немогућности да је објекат инстанца класе која спроводи одређени интерфејс. Интерфејс можемо окарактерисати као класу која одређује гомилу техника које различите класе извршавају.
Код
грешка у раду
# Python isinstance() function example class Animal: def speak(self): raise NotImplementedError class Dog(Animal): def speak(self): return 'Woof!' class Cat(Animal): def speak(self): return 'Meow!' def make_animal_speak(animal): if isinstance(animal, Animal): return animal.speak() else: raise ValueError('Object is not an Animal') my_dog = Dog() my_cat = Cat() print(make_animal_speak(my_dog)) print(make_animal_speak(my_cat))
Излаз:
'Woof!' 'Meow!'
Пример функције Питхон исинстанце() 3
Ова функција такође враћа Труе ако је објекат поткласе, а класа је родитељска класа. Погледајте како то функционише у следећем примеру.
Код
# Python isinstance() function example # Declaring variables class NumericList(list): def __init__(self): return None num = NumericList() # Calling function print(isinstance(num, NumericList)) # True print(isinstance(num, list)) # True
Излаз:
True True
Закључак:
У закључку, функција исинстанце() је корисна уграђена Питхон функција која нам омогућава да проверимо да ли је објекат инстанца унапред дефинисане класе или подкласе. Ово може бити посебно вредно док радите са кодом који укључује различите типове података, или док пишете библиотеке или АПИ-је који треба да се баве великим бројем типова уноса. Коришћењем исинстанце(), може се гарантовати да наш код делује тачно за различите типове уноса и да је енергичнији уопштено говорећи.