Python isinstance() funkcija tiek izmantota, lai pārbaudītu, vai dotais objekts ir šīs klases gadījums. Ja objekts pieder klasei, tas atgriež True. Pretējā gadījumā atgriež False. Tas arī atgriež patieso vērtību, ja klase ir apakšklase.
Funkcija isinstance() izmanto divus argumentus objektu un classinfo un atgriež True vai False. Funkcijas paraksts ir norādīts zemāk.
Sintakse:
isinstance(object, classinfo)
Parametri
objekts: Tas ir virknes, int, peldoša, gara vai pielāgota tipa objekts.
klases informācija: Klases nosaukums.
Atgriezties
Tas atgriež Būla vērtību True vai False.
Apskatīsim dažus funkcijas isinstance() piemērus, lai saprastu tās funkcionalitāti.
Python Isinstance() piemēri:
Mēs izmantojam funkciju isinstance(), lai pārbaudītu, vai dažādi mainīgie ir to atsevišķo datu tipu vai klašu gadījumi.
1. Vesels skaitlis
Kods
saglabāt youtube video vlc
# Check if an integer is an int n = 100 print(isinstance(n, int))
Izvade:
True
2. Pludiņš
Kods
# Check if a float is a float pi = 3.14159 print(isinstance(pi, float))
Izvade:
True
3. Stīga
Kods
# Check if a string is a string name = 'Johnny' print(isinstance(name, str))
Izvade:
True
4. Saraksts
Kods
# Check if a list is a list colours = ['blue', 'black', 'brown'] print(isinstance(colours, list))
Izvade:
True
5. Vārdnīca
Kods
hiba bukhari
# Check if a dictionary is a dict person = {'name': 'Ayan', 'age': 30} print(isinstance(person, dict))
Izvade:
True
6. Korpuss
Kods
# Check if a tuple is a tuple point = (1, 5) print(isinstance(point, tuple))
Izvade:
aes vs des
True
7. Uzstādīt
Kods
# Check if a set is a set digits = {1, 2, 3, 4,5,6,7,8} print(isinstance(digits, set))
Izvade:
True
8. Klase
Kods
# Check if a custom class instance is an instance of that class class Bike: pass my_bike = Bike() print(isinstance(my_bike, Bike))
Izvade:
True
Apskatīsim vēl dažus funkcijas isinstance() piemērus, lai saprastu tās funkcionalitāti.
Python isinstance() funkcijas 1. piemērs
Šeit mēs nododam objektu un klasi funkcijai, kas atgriež True tikai tad, ja objekts pieder klasei. Skatiet zemāk redzamo piemēru.
Kods
powershell daudzrindu komentārs
# 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))
Izvade:
True False
Python isinstance() funkcijas 2. piemērs
isinstance() var izmantot, lai pārbaudītu, vai objekts ir klases gadījums, kas veic noteiktu saskarni. Mēs varam raksturot saskarni kā klasi, kas nosaka virkni paņēmienu, ko izpilda dažādas klases.
Kods
# 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))
Izvade:
'Woof!' 'Meow!'
Python isinstance() funkcijas 3. piemērs
Šī funkcija atgriež arī vērtību True, ja objekts ir apakšklase un klase ir vecākklase. Skatiet, kā tas darbojas zemāk esošajā piemērā.
Kods
# 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
Izvade:
True True
Secinājums:
Visbeidzot, funkcija isinstance () ir noderīga iebūvēta Python funkcija, kas ļauj mums pārbaudīt, vai objekts ir iepriekš noteiktas klases vai apakšklases gadījums. Tas var būt īpaši vērtīgi, strādājot ar kodu, kas ietver dažādus datu tipus, vai rakstot bibliotēkas vai API, kam jādarbojas ar ļoti daudziem ievades veidiem. Izmantojot isinstance (), var garantēt, ka mūsu kods darbojas precīzi dažādiem ievades veidiem un kopumā ir enerģiskāks.