En python, isinstance signifie « jugement de type ». isinstance() est une fonction intégrée utilisée pour déterminer si un objet est d'un type connu. La syntaxe est "isinstance(object, type)". Si c'est le cas, elle renvoie True, sinon elle renvoie False et si le paramètre de type est ; un tuple et que l'objet est l'un des types du tuple, alors cette fonction renverra également True.
L'environnement d'exploitation de ce tutoriel : système windows7, version python3, ordinateur DELL G3
En python, isinstance signifie "jugement de type".
fonction python isinstance()
fonction isinstance() pour déterminer si un objet est d'un type connu, similaire à type(). La différence entre
isinstance() et type() :
type() ne considère pas la sous-classe comme un type de classe parent et ne considère pas la relation d'héritage.
isinstance() considérera la sous-classe comme un type de classe parent et considérera la relation d'héritage.
Si vous souhaitez déterminer si deux types sont identiques, il est recommandé d'utiliser isinstance().
Si l'objet spécifié a le type spécifié, la fonction isinstance() renvoie True, sinon elle renvoie False.
Si le paramètre de type est un tuple, alors cette fonction retournera True si l'objet est l'un des types du tuple.
Syntaxe :
isinstance(object, type)
Paramètres | Description |
---|---|
objet | Obligatoire. objet. |
type | Un type ou une classe, ou un tuple de types et/ou de classes. |
Exemple 1 : Vérifiez si "Bonjour" est l'un des types décrits dans le paramètre de type
x = isinstance("Hello", (str, float, int, str, list, dict, tuple)) print(x)
Exemple 2 : Vérifiez si y est une instance de myObj
class myObj: name = "Bill" y = myObj() x = isinstance(y, myObj) print(x)
Connaissances étendues : type et La différence entre isinstance
type en python peut obtenir le type de données d'un objet, et isinstance peut déterminer le type de données d'un objet. Il y a deux différences entre eux
1 isinstance est plus flexible
. type renvoie simplement les données d'un type d'objet, et isinstance peut déterminer si le type de données de cet objet est l'un des nombreux types de données.
Supposons que nous voulions déterminer si le type de données d'un objet est int ou float. Les exemples d'écriture des deux fonctions sont les suivants
a = 4 # 使用type if type(a) == int or type(a) == float: print('yes') # 使用isinstance if isinstance(a, (int, float)): print('yes')
Évidemment, dans ce scénario, isinstance a plus d'avantages
2. de la relation d'héritage
class A: pass class B(A): pass a = A() b = B() print(type(b) == A) # False print(isinstance(b, A)) # True
B est une sous-classe de A. type(b) renvoie la classe B, qui n'est pas égale à A, mais B est une sous-classe de A. Par conséquent, on peut penser que b est aussi un objet de A . Face à ce type d'héritage Dans le cas de relations, il faut utiliser isinstance
Apprentissage recommandé : Tutoriel vidéo Python
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!