Utilisez la fonction isinstance() de Python pour déterminer si un objet appartient à une certaine classe
En Python, nous devons souvent déterminer si un objet appartient à une classe spécifique. Afin de faciliter le jugement des catégories, Python fournit une fonction intégrée isinstance(). Cet article présentera l'utilisation de la fonction isinstance() et fournira des exemples de code. La fonction
isinstance() peut déterminer si un objet appartient à la classe spécifiée ou à une classe dérivée de la classe. Sa syntaxe est la suivante :
isinstance(object, classinfo)
Parmi eux, object est l'objet à juger, et classinfo peut être une classe unique ou un tuple composé de classes. Si l'objet appartient à l'une des classes ou à ses classes dérivées, la fonction isinstance() renverra True sinon, elle renvoie False ;
Ce qui suit est un exemple simple qui montre comment utiliser la fonction isinstance() pour déterminer le type d'objet :
class Dog: def __init__(self, name): self.name = name class Cat: def __init__(self, name): self.name = name dog = Dog("旺财") cat = Cat("小花") print(isinstance(dog, Dog)) # 输出:True print(isinstance(dog, Cat)) # 输出:False print(isinstance(cat, (Dog, Cat))) # 输出:True
Dans l'exemple ci-dessus, nous avons défini deux classes Dog et Cat, qui ont toutes deux un nom d'attribut. Ensuite, nous avons créé un objet chien et un objet chat. Grâce à la fonction isinstance(), nous déterminons si l'objet chien appartient à la classe Dog, si l'objet cat appartient à la classe Cat et si l'objet cat appartient à la classe Dog ou à la classe Cat.
En plus de déterminer le type d'un objet unique, la fonction isinstance() peut également déterminer si un objet appartient à l'une de plusieurs classes.
Il convient de noter que la fonction isinstance() peut également être utilisée pour déterminer la relation d'héritage des types d'objets. C'est-à-dire que si une classe hérite d'une autre classe, la fonction isinstance() peut déterminer si l'objet appartient à la classe ou à la sous-classe parent.
Ce qui suit est un exemple plus complexe qui démontre le jugement d'héritage de la fonction isinstance() :
class Animal: pass class Mammal(Animal): pass class Dog(Mammal): def __init__(self, name): self.name = name class Cat(Mammal): def __init__(self, name): self.name = name dog = Dog("旺财") cat = Cat("小花") print(isinstance(dog, Dog)) # 输出:True print(isinstance(dog, Mammal)) # 输出:True print(isinstance(dog, Animal)) # 输出:True print(isinstance(cat, Mammal)) # 输出:True print(isinstance(cat, Animal)) # 输出:True print(isinstance(dog, Cat)) # 输出:False
Dans l'exemple ci-dessus, nous avons défini une classe Animal et une classe Mammifère comme classe parent, puis avons défini la classe Dog et La classe Chat est une sous-classe de la classe Mammifère. Grâce à la fonction isinstance(), nous déterminons si l'objet chien appartient à la classe Chien, à la classe Mammifère et à la classe Animal, si l'objet chat appartient à la classe Mammifère et à la classe Animal, et si l'objet chien appartient à la classe Chat.
Grâce à l'introduction de cet article, nous pouvons voir que nous pouvons facilement déterminer si un objet appartient à une classe spécifique grâce à la fonction isinstance(). Dans le développement réel, maîtriser l'utilisation de la fonction isinstance() peut nous aider à gérer le jugement du type d'objet et la logique de traitement avec plus de flexibilité. Si vous êtes intéressé par le jugement des catégories de Python, vous souhaiterez peut-être vous entraîner à utiliser la fonction isinstance() dans un projet réel, je pense que cela sera utile pour vos compétences en programmation.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!