logo

Python isinstance() funksjon

Python isinstance()-funksjonen brukes til å sjekke om det gitte objektet er en forekomst av den klassen. Hvis objektet tilhører klassen, returnerer det True. Ellers returnerer False. Den returnerer også sant hvis klassen er en underklasse.

Funksjonen isinstance() tar to argumenter objekt og klasseinfo og returnerer enten True eller False. Signaturen til funksjonen er gitt nedenfor.

Syntaks:

 isinstance(object, classinfo) 

Parametere

gjenstand: Det er et objekt av streng, int, float, lang eller tilpasset type.

klasseinfo: Klassenavn.

Komme tilbake

Den returnerer boolsk enten Sant eller Usant.

La oss se noen eksempler på isinstance()-funksjonen for å forstå dens funksjonalitet.

Python Isinstance() eksempler:

Vi bruker funksjonen isinstance() for å sjekke om ulike variabler er forekomster av deres separate datatyper eller klasser.

1. Heltall

Kode

konvertere boolesk til streng
 # Check if an integer is an int n = 100 print(isinstance(n, int)) 

Produksjon:

 True 

2. Flyte

Kode

 # Check if a float is a float pi = 3.14159 print(isinstance(pi, float)) 

Produksjon:

 True 

3. String

Kode

 # Check if a string is a string name = 'Johnny' print(isinstance(name, str)) 

Produksjon:

 True 

4. Liste

Kode

primtallsprogram i java
 # Check if a list is a list colours = ['blue', 'black', 'brown'] print(isinstance(colours, list)) 

Produksjon:

 True 

5. Ordbok

Kode

 # Check if a dictionary is a dict person = {'name': 'Ayan', 'age': 30} print(isinstance(person, dict)) 

Produksjon:

kassen med git
 True 

6. Tuppel

Kode

 # Check if a tuple is a tuple point = (1, 5) print(isinstance(point, tuple)) 

Produksjon:

 True 

7. Sett

Kode

 # Check if a set is a set digits = {1, 2, 3, 4,5,6,7,8} print(isinstance(digits, set)) 

Produksjon:

 True 

8. Klasse

Kode

 # Check if a custom class instance is an instance of that class class Bike: pass my_bike = Bike() print(isinstance(my_bike, Bike)) 

Produksjon:

 True 

La oss se noen flere eksempler på isinstance()-funksjonen for å forstå dens funksjonalitet.

Python isinstance() Funksjonseksempel 1

Her sender vi objekt og klasse til funksjonen som returnerer True bare hvis objektet tilhører klassen. Se eksemplet nedenfor.

partielt derivat av lateks

Kode

 # 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)) 

Produksjon:

 True False 

Python isinstance() funksjonseksempel 2

isinstance() kan brukes til å sjekke av sjansen for at et objekt er en forekomst av en klasse som utfører et spesifikt grensesnitt. Vi kan karakterisere et grensesnitt som en klasse som bestemmer en haug med teknikker som forskjellige klasser utfører.

Kode

 # 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)) 

Produksjon:

 'Woof!' 'Meow!' 

Python isinstance() funksjonseksempel 3

Denne funksjonen returnerer også True hvis objektet er av underklasse og klassen er en overordnet klasse. Se hvordan det fungerer i eksemplet nedenfor.

Kode

 # 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 

Produksjon:

 True True 

Konklusjon:

Avslutningsvis er isinstance()-funksjonen en nyttig innebygd Python-funksjon som lar oss sjekke om et objekt er en forekomst av en forhåndsdefinert klasse eller underklasse. Dette kan være spesielt verdifullt når du arbeider med kode som inkluderer ulike datatyper, eller mens du skriver biblioteker eller APIer som må håndtere svært mange inputtyper. Ved å bruke isinstance(), kan man garantere at koden vår fungerer nøyaktig for forskjellige inndatatyper og generelt sett er mer energisk.