Maison >développement back-end >Tutoriel Python >Introduction détaillée à la fonction isinstance intégrée de Python
Documentation en anglais :
Return true if l'argument objet est une instance de l'argument classinfo, ou d'une sous-classe (directe, indirecte ou virtuelle) de celui-ci. Si l'objet n'est pas un objet du type donné, la fonction renvoie toujours false Si classinfo est un tuple de type. les objets (ou de manière récursive, d'autres tuples similaires), renvoient true si l'objet est une instance de l'un des types. Si classinfo n'est pas un type ou un tuple de types et de tels tuples, une TypeError exception est levée.
Description :
1. La fonction est utilisée pour déterminer si un objet est une instance d'un objet de type. Le paramètre objet représente l'objet qui doit être vérifié. , et le paramètre calssinfo représente l'objet type.
2. Si le paramètre object est une instance d'un objet de type classinfo (ou une sous-classe directe, indirecte ou virtuelle d'un objet de classe classinfo), renvoie True.
>>> isinstance(1,int) True >>> isinstance(1,str) False # 定义3各类:C继承B,B继承A >>> class A: pass >>> class B(A): pass >>> class C(B): pass >>> a = A() >>> b = B() >>> c = C() >>> isinstance(a,A) #直接实例 True >>> isinstance(a,B) False >>> isinstance(b,A) #子类实例 True >>> isinstance(c,A) #孙子类实例 True
3. Si le paramètre objet est passé dans un objet de type, False sera toujours renvoyé.
>>> isinstance(str,str) False >>> isinstance(bool,int) False
4. Si l'objet de type classinfo est un tuple composé de plusieurs objets de type, et si l'objet objet est une instance de n'importe quel objet de type dans le tuple, True est renvoyé . Sinon, renvoie False.
>>> isinstance(a,(B,C)) False >>> isinstance(a,(A,B,C)) True
5. Si l'objet de type classinfo n'est pas un objet de type ou un tuple composé de plusieurs objets de type, une erreur (TypeError) sera signalée.
>>> isinstance(a,[A,B,C]) Traceback (most recent call last): File "<pyshell#23>", line 1, in <module> isinstance(a,[A,B,C]) TypeError: isinstance() arg 2 must be a type or tuple of types
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!