Què és Isinstance a Python i com implementar-lo?



Aquest article us presentarà un mètode que és Isinstance a Python i us proporcionarà una explicació conceptual completa amb demostració.

és un dels llenguatges de programació més potents disponibles al mercat actualment. Python també admet la implementació d'altres llenguatges de programació dins del seu ecosistema com Java, C i C ++. D’entre els molts mòduls i funcions disponibles a l’ecosistema Python, un d’aquests que destaca entre la resta és la instància a Python. Així, en aquest article parlarem detalladament sobre la instància, els seus usos i les característiques que aporta a la taula.

En aquest article es tractaran les següents indicacions,





Anem a començar!

Què és Isinstance a Python?

La instància Python s'utilitza per comprovar si el primer objecte que és l'argument és una instància o una subclasse de la classe classinfo que és el segon argument.



La sintaxi de la instància a Python és la següent.

isinstance (objecte, classinfo)

Vegem quins paràmetres i quin valor de retorn té Isinstance a Python,



Paràmetre i valor de retorn d'instància

Paràmetre

Ara que ja sou conscient de la sintaxi per a la instància, anem a examinar de més a prop el paràmetre que té en compte.

  1. Objecte: és l'objecte que cal comprovar.
  2. Classinfo: és la classe, la informació o la tupla de classes amb què s’ha de comprovar l’objecte.

Valor de retorn

php converteix la cadena en matriu

Quan s’utilitza la instància en un programa, el valor de retorn depèn d’una sèrie de condicions, tal com s’explica als indicadors següents.

  1. True es retorna si l'objecte és una subclasse de la classinfo o tupla de classes.
  2. Es torna fals si l'objecte no és una subclasse de la classinfo o la tupla de classes.

Si en una situació particular, la classinfo no és un tipus o una tupla de tipus, llavors es mostrarà una excepció de tipuserror a la pantalla de l'usuari.

Exemples

Per entendre millor l’ús de la instància, donem una ullada a alguns exemples.

Exemple 1

classe Foo: a = 5 fooInstance = Foo () imprimir (isinstance (fooInstance, Foo)) imprimir (isinstance (fooInstance, (llista, tupla))) imprimir (isinstance (fooInstance, (llista, tupla, Foo)))

Sortida

És cert

Fals

És cert

Isinstance a Python: exemple # 2

números = [1, 2, 3] resultat = isinstance (números, llista) imprimir (números, 'instància de llista?', resultat) resultat = isinstance (números, dict) imprimir (números, 'instància de dict?', resultat ) result = isinstance (numbers, (dict, list)) print (numbers, 'instance of dict or list?', result) number = 5 result = isinstance (number, list) print (number, 'instance of list?', result) result = instància (número, int) imprimir (número, 'instància d'int?', resultat)

Sortida

[1, 2, 3] instància de la llista? És cert

[1, 2, 3] instància de dict? Fals

[1, 2, 3] instància de dict o llista? És cert

5 instància de llista? Fals

5 instància d'int? És cert

Exemple 3

# Codi Python per a la classe isinstance () Test: a = 5 TestInstance = Test () print (isinstance (TestInstance, Test)) print (isinstance (TestInstance, (llista, tupla))) print (isinstance (TestInstance, (llista, tupla)) , Prova)))

Sortida

És cert

Fals

com finalitzar el programa a Java

És cert

Continuem amb l'article 'Isinstance In Python' i entenem l'ús del mètode Type,

L'ús de Type a Python

De manera similar a la instància, hi ha un altre mètode integrat a Python que s’utilitza per comprovar la variable tipus pf que s’utilitza durant el temps d’execució. Si es passa un únic argument o objecte pel mètode type, retorna el tipus d'objecte que s'utilitza durant l'execució.

Per entendre-ho millor, consulteu l'exemple següent.

Isinstance a Python: exemple # 1.1

# Tipus de codi Python () amb un paràmetre d'objecte únic x = 5 s = 'sortida de mostra' y = [1,2,3] imprimir (tipus (x)) imprimir (tipus (s)) imprimir (tipus (y))

Sortida

classe 'int'

classe 'str'

classe 'llista'

Exemple núm. 1.2

# Codi de Python per a type () amb un nom, # bases i paràmetre dict o1 = type ('X', (object,), dict (a = 'Foo', b = 12)) print (type (o1)) print (vars (o1)) prova de classe: a = 'Foo' b = 12 o2 = type ('Y', (test,), dict (a = 'Foo', b = 12)) print (type (o2)) imprimir (vars (o2))

Sortida

{'B': 12, 'a': 'Foo', '__dict__':, '__doc__': Cap, '__weakref__':}

{'B': 12, 'a': 'Foo', '__doc__': Cap}

Comparem Type i Isinstance a Python,

Diferència entre Type () i Isinstance

El tipus i la instància a Python compleixen dues funcions molt diferents. Mireu els indicadors següents per comprendre millor la diferència entre ells.

  1. Si heu de comprovar si un objecte té un tipus determinat, el millor és utilitzar la instància. Això es deu al fet que la instància podrà comprovar si l'objecte passat al primer argument és del mateix tipus que el passat al segon argument.
  2. D'altra banda, l'ús del tipus és més preferit quan cal comprovar simplement el tipus d'un objecte concret i no comparar-lo amb un altre.

Exemple

#Python code per il·lustrar la classe d'escriptura d'ànec Usuari (objecte): def __init __ (self, firstname): self.firstname = firstname @property def name (self): return self.firstname class Animal (object): pass class Fox (Animal) : name = 'Fox' classe Bear (Animal): name = 'Bear' # Utilitzeu l'atribut (o la propietat) .name independentment del tipus d'un a [User ('SampleOutput'), Fox (), Bear ()] : print (a.name)

Sortida

Sortida de mostra

Fox

Suportar

Un altre motiu per no utilitzar el mètode tipus és la manca d’herència. Mireu els exemples que es comparteixen a continuació per entendre-ho millor.

#python code per il·lustrar la manca de #support per a l'herència a la classe type () MyDict (dict): '' 'Un dict normal, que sempre es crea amb una clau' inicial '' 'def __init __ (self): self [ 'inicial'] = 'algunes dades' d = MyDict () print (type (d) == dict) print (type (d) == MyDict) d = dict () print (type (d) == dict) print (tipus (d) == MyDict)

Sortida

Fals

És cert

És cert

Fals

ordenar els números c ++

Doncs això, nois, això ens porta al final d’aquest article. Espero que hagueu entès Isinstance a Python i el que fa.

Per obtenir coneixements en profunditat sobre Python juntament amb les seves diverses aplicacions, podeu fer-ho per a formació en línia en directe amb assistència les 24 hores del dia, els 7 dies de la setmana i accés durant tota la vida.

Tens alguna pregunta? Esmenta’ls a la secció de comentaris d’aquest article i et respondrem.