Ce este instanța în Python și cum să o implementăm?



Acest articol vă va prezenta o metodă care este Isinstance în Python și vă va oferi o explicație conceptuală amănunțită cu demonstrație.

este unul dintre cele mai puternice limbaje de programare disponibile pe piață astăzi. Python acceptă, de asemenea, implementarea altor limbaje de programare în ecosistemul său, cum ar fi Java, C, precum și C ++. Dintre numeroasele module și funcții disponibile în ecosistemul Python, unul dintre cele care se remarcă printre restul este instanța în Python. Astfel, în acest articol vom vorbi în detaliu despre instanța, utilizările sale și caracteristicile pe care le aduce la masă.

Următoarele indicații vor fi tratate în acest articol,





Sa incepem!

Ce este Isinstance în Python?

Instanța Python este utilizată pentru a verifica dacă primul obiect care este argumentul este o instanță sau o subclasă a clasei classinfo care este al doilea argument.



Sintaxa pentru instanța în Python este următoarea.

instanță (obiect, clasăinfo)

Să vedem ce parametri și valoarea de returnare are Isinstance în Python,



Parametrul și valoarea returnată a instanței

Parametru

Acum, că sunteți conștient de sintaxa pentru instanță, să analizăm mai atent parametrul pe care îl ia în considerare.

  1. Obiect: Acesta este obiectul care trebuie verificat.
  2. Classinfo: Aceasta este clasa, informațiile sau tuplul de clase cu care trebuie verificat obiectul.

Valoare returnată

c ++ cum se sortează o matrice

Când instanța este utilizată într-un program, valoarea returnată depinde de o serie de condiții, așa cum se explică în indicatoarele de mai jos.

  1. Adevărat este returnat dacă obiectul este o subclasă a clasinfo sau tuplului de clase.
  2. Fals este returnat dacă obiectul nu este o subclasă a clasinfo sau tuplul de clase.

Dacă într-o anumită situație, classinfo nu este un tip sau un tuplu de tipuri, atunci o excepție de tip eroare este ridicată pe ecranul utilizatorului.

Exemple

Pentru a înțelege mai bine utilizarea instanței, să aruncăm o privire la câteva exemple.

Exemplul nr. 1

clasa Foo: a = 5 fooInstance = Foo () print (isinstance (fooInstance, Foo)) print (isinstance (fooInstance, (list, tuplu))) print (isinstance (fooInstance, (list, tuplu, Foo)))

Ieșire

Adevărat

Fals

Adevărat

Isinstance în Python: Exemplul # 2

numere = [1, 2, 3] rezultat = isinstance (numere, listă) print (numere, 'instanță de listă?', rezultat) rezultat = isinstance (numere, dict) print (numere, 'instanță de dict?', rezultat ) rezultat = este instanță (numere, (dict, listă)) print (numere, 'instanță de dictare sau listă?', rezultat) număr = 5 rezultat = este instanță (număr, listă) tipărire (număr, 'instanță de listă?', rezultat) rezultat = instanță (număr, int) tipărire (număr, „instanță a int?”, rezultat)

Ieșire

[1, 2, 3] instanță a listei? Adevărat

[1, 2, 3] instanță de dict? Fals

[1, 2, 3] instanță de dictare sau listă? Adevărat

5 exemplu de listă? Fals

5 exemplu de int? Adevărat

Exemplul nr. 3

# Cod Python pentru clasa isinstance () Test: a = 5 TestInstance = Test () print (isinstance (TestInstance, Test)) print (isinstance (TestInstance, (listă, tuplu))) print (isinstance (TestInstance, (listă, tuplu) , Test)))

Ieșire

Adevărat

Fals

ce este un dezvoltator de blockchain

Adevărat

Să continuăm cu articolul „Isinstance In Python” și să înțelegem utilizarea metodei Type,

Utilizarea tipului în Python

Similar cu instanța, există o altă metodă încorporată în Python care este utilizată pentru a verifica variabila de tip pf care este utilizată în timpul rulării. Dacă un singur argument sau obiect este trecut prin metoda tip, acesta returnează tipul obiectului care este utilizat în timpul rulării.

Pentru a înțelege mai bine acest lucru, aruncați o privire la exemplul de mai jos.

Isinstance în Python: Exemplul # 1.1

# Tipul codului Python () cu un singur parametru obiect x = 5 s = 'outputoutput' y = [1,2,3] print (type (x)) print (type (s)) print (type (y))

Ieșire

clasa 'int'

clasa 'str'

clasă 'listă'

Exemplul # 1.2

# Cod Python pentru tipul () cu un nume, # bazele și parametrul dict o1 = tip ('X', (obiect,), dict (a = 'Foo', b = 12)) print (tip (o1)) print (vars (o1)) test de clasă: a = 'Foo' b = 12 o2 = tip ('Y', (test,), dict (a = 'Foo', b = 12)) print (tip (o2)) print (vars (o2))

Ieșire

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

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

Să comparăm Type și Isinstance în Python,

Diferența dintre Type () și Isinstance

Tipul și instanța în Python îndeplinesc două funcții foarte diferite. Aruncați o privire asupra indicatoarelor de mai jos pentru a înțelege mai bine diferența dintre ele.

  1. Dacă trebuie să verificați dacă un obiect are un anumit tip, atunci cel mai bine este să utilizați instanța. Acest lucru se datorează faptului că instanța va putea verifica dacă obiectul trecut în primul argument este de același tip cu cel trecut în al doilea argument.
  2. Pe de altă parte, utilizarea tipului este mai preferată atunci când trebuie să verificați pur și simplu tipul unui anumit obiect și să nu îl comparați cu altul.

Exemplu

#Python code to illustrate duck typing class User (object): def __init __ (self, firstname): self.firstname = prenume @property def name (self): returnează self.firstname class Animal (object): pass class Fox (Animal) : name = 'Fox' clasă Bear (Animal): name = 'Bear' # Utilizați atributul (sau proprietatea) .name, indiferent de tipul pentru un utilizator [[SampleOutput '], Fox (), Bear ()] : print (a.name)

Ieșire

SampleOutput

Vulpe

Urs

Un alt motiv pentru care nu se folosește metoda tip este lipsa moștenirii. Aruncați o privire la exemplele împărtășite mai jos pentru a înțelege mai bine acest lucru.

cod #python pentru a ilustra lipsa #support pentru moștenire în clasa type () MyDict (dict): '' 'Un dict normal, care este întotdeauna creat cu o cheie' inițială '' 'def __init __ (self): self [ 'initial'] = 'unele date' d = MyDict () print (type (d) == dict) print (type (d) == MyDict) d = dict () print (type (d) == dict) print (tip (d) == MyDict)

Ieșire

Fals

Adevărat

Adevărat

Fals

java declară o serie de obiecte

Deci, băieți, acest lucru ne aduce la sfârșitul acestui articol. Sper că ați înțeles Isinstance în Python și ce face.

Pentru a obține cunoștințe aprofundate despre Python împreună cu diferitele sale aplicații, puteți pentru instruire online live cu asistență 24/7 și acces pe viață.

Ai o întrebare pentru noi? Menționați-le în secțiunea de comentarii a acestui articol și vă vom răspunde.