Python isinstance() funkcija se koristi za provjeru je li dati objekt instanca te klase. Ako objekt pripada klasi, vraća True. Inače vraća False. Također vraća true ako je klasa podklasa.
Funkcija isinstance() uzima dva argumenta object i classinfo i vraća True ili False. Potpis funkcije dat je u nastavku.
Sintaksa:
isinstance(object, classinfo)
Parametri
objekt: To je objekt tipa string, int, float, long ili custom.
informacije o klasi: Naziv klase.
Povratak
Vraća booleovu vrijednost True ili False.
Pogledajmo neke primjere funkcije isinstance() da bismo razumjeli njezinu funkcionalnost.
Primjeri Python Isinstance():
Koristimo funkciju isinstance() da provjerimo jesu li različite varijable instance svojih zasebnih tipova podataka ili klasa.
1. Cijeli broj
Kodirati
gdje je tipka za umetanje na tipkovnici laptopa
# Check if an integer is an int n = 100 print(isinstance(n, int))
Izlaz:
True
2. Plutanje
Kodirati
# Check if a float is a float pi = 3.14159 print(isinstance(pi, float))
Izlaz:
True
3. Niz
Kodirati
popis python programa
# Check if a string is a string name = 'Johnny' print(isinstance(name, str))
Izlaz:
True
4. Popis
Kodirati
# Check if a list is a list colours = ['blue', 'black', 'brown'] print(isinstance(colours, list))
Izlaz:
True
5. Rječnik
Kodirati
# Check if a dictionary is a dict person = {'name': 'Ayan', 'age': 30} print(isinstance(person, dict))
Izlaz:
True
6. Tuple
Kodirati
# Check if a tuple is a tuple point = (1, 5) print(isinstance(point, tuple))
Izlaz:
True
7. Postavite
Kodirati
# Check if a set is a set digits = {1, 2, 3, 4,5,6,7,8} print(isinstance(digits, set))
Izlaz:
True
8. Klasa
Kodirati
# Check if a custom class instance is an instance of that class class Bike: pass my_bike = Bike() print(isinstance(my_bike, Bike))
Izlaz:
java skener sljedeći
True
Pogledajmo još neke primjere funkcije isinstance() da bismo razumjeli njezinu funkcionalnost.
Primjer 1. funkcije Python isinstance().
Ovdje prosljeđujemo objekt i klasu funkciji koja vraća True samo ako objekt pripada klasi. Pogledajte donji primjer.
Kodirati
# 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))
Izlaz:
True False
Primjer 2. funkcije Python isinstance().
isinstance() se može koristiti za provjeru slučajnog slučaja je li objekt instanca klase koja provodi određeno sučelje. Sučelje možemo okarakterizirati kao klasu koja određuje hrpu tehnika koje različite klase izvršavaju.
markdown precrtano
Kodirati
# 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))
Izlaz:
'Woof!' 'Meow!'
Primjer 3. funkcije Python isinstance().
Ova funkcija također vraća True ako je objekt potklase, a klasa roditeljska klasa. Pogledajte kako to radi u donjem primjeru.
Kodirati
# 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
Izlaz:
True True
Zaključak:
Zaključno, funkcija isinstance() korisna je ugrađena funkcija Pythona koja nam omogućuje da provjerimo je li objekt instanca unaprijed definirane klase ili podklase. To može biti osobito vrijedno tijekom rada s kodom koji uključuje različite tipove podataka ili tijekom pisanja biblioteka ili API-ja koji se moraju nositi s velikim brojem vrsta unosa. Korištenjem isinstance(), može se jamčiti da naš kod djeluje točno za različite vrste unosa i da je općenito energičniji.