La fonction Python isinstance() est utilisée pour vérifier si l'objet donné est une instance de cette classe. Si l'objet appartient à la classe, il renvoie True. Sinon, renvoie False. Cela renvoie également vrai si la classe est une sous-classe.
La fonction isinstance() prend deux arguments object et classinfo et renvoie True ou False. La signature de la fonction est donnée ci-dessous.
Syntaxe:
isinstance(object, classinfo)
Paramètres
objet: C'est un objet de type string, int, float, long ou personnalisé.
infos sur la classe : Nom du cours.
Retour
Il renvoie un booléen True ou False.
Voyons quelques exemples de la fonction isinstance() pour comprendre sa fonctionnalité.
Python Isinstance() Exemples :
Nous utilisons la fonction isinstance() pour vérifier si diverses variables sont des instances de leurs types ou classes de données distincts.
1. Entier
Code
menu des paramètres Android
# Check if an integer is an int n = 100 print(isinstance(n, int))
Sortir:
True
2. Flotteur
Code
# Check if a float is a float pi = 3.14159 print(isinstance(pi, float))
Sortir:
True
3. Chaîne
Code
# Check if a string is a string name = 'Johnny' print(isinstance(name, str))
Sortir:
True
4. Liste
Code
1 milliard en millions
# Check if a list is a list colours = ['blue', 'black', 'brown'] print(isinstance(colours, list))
Sortir:
True
5. Dictionnaire
Code
# Check if a dictionary is a dict person = {'name': 'Ayan', 'age': 30} print(isinstance(person, dict))
Sortir:
gestion des exceptions Java
True
6. Tuple
Code
# Check if a tuple is a tuple point = (1, 5) print(isinstance(point, tuple))
Sortir:
True
7. Définir
Code
# Check if a set is a set digits = {1, 2, 3, 4,5,6,7,8} print(isinstance(digits, set))
Sortir:
True
8. Classe
Code
# Check if a custom class instance is an instance of that class class Bike: pass my_bike = Bike() print(isinstance(my_bike, Bike))
Sortir:
True
Voyons quelques exemples supplémentaires de la fonction isinstance() pour comprendre sa fonctionnalité.
Exemple de fonction Python isinstance() 1
Ici, nous passons l'objet et la classe à la fonction qui renvoie True uniquement si l'objet appartient à la classe. Voir l'exemple ci-dessous.
forme normale de Greibach
Code
# 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))
Sortir:
True False
Exemple de fonction Python isinstance() 2
isinstance() peut être utilisé pour vérifier si un objet est une instance d'une classe qui exécute une interface spécifique. Nous pouvons caractériser une interface comme une classe qui détermine un ensemble de techniques exécutées par différentes classes.
Code
# 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))
Sortir:
'Woof!' 'Meow!'
Exemple de fonction Python isinstance() 3
Cette fonction renvoie également True si l'objet appartient à une sous-classe et que la classe est une classe parent. Voyez comment cela fonctionne dans l'exemple ci-dessous.
Code
# 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
Sortir:
True True
Conclusion:
En conclusion, la fonction isinstance() est une fonction Python intégrée utile qui nous permet de vérifier si un objet est une instance d'une classe ou d'une sous-classe prédéfinie. Cela peut être particulièrement utile lorsque vous travaillez avec du code incluant différents types de données, ou lors de l'écriture de bibliothèques ou d'API devant gérer un grand nombre de types d'entrée. En utilisant isinstance(), on peut garantir que notre code agit avec précision pour différents types d'entrée et qu'il est généralement plus vigoureux.