Hvad er der i Python, og hvordan implementeres det?



Denne artikel introducerer dig til en metode, der er Isinstance i Python, og giver dig en grundig konceptuel forklaring med demonstration.

er et af de mest kraftfulde programmeringssprog, der findes på markedet i dag. Python understøtter også implementering af andre programmeringssprog inden for sit økosystem som Java, C såvel som C ++. Ud af de mange moduler og funktioner, der er tilgængelige i Python-økosystemet, er en sådan, der skiller sig ud blandt resten, instansen i Python. Således i denne artikel vil vi tale detaljeret om isinstansen, dens anvendelser og de funktioner, den bringer til bordet.

Følgende punkter vil blive dækket i denne artikel,





Lad os begynde!

Hvad er Isinstance i Python?

Python-instansen bruges til at kontrollere, om det første objekt, der er argumentet, er en forekomst eller underklasse af classinfo-klassen, der er det andet argument.



Syntaksen for isinstansen i Python er som følger.

java bryder ud af metoden

isinstance (objekt, klasseinfo)

Lad os se, hvilke parametre og returværdi har Isinstance i Python,



Parameter og returværdi af Isinstance

Parameter

Nu hvor du er opmærksom på syntaksen for isinstance, skal vi se nærmere på den parameter, den tager højde for.

  1. Objekt: Dette er det objekt, der skal kontrolleres.
  2. Classinfo: Dette er klassen, info eller klassen af ​​klasser, som objektet skal kontrolleres mod.

Returneringsværdi

Når instansen bruges i et program, afhænger returværdien af ​​et antal forhold som forklaret i nedenstående henvisninger.

  1. True returneres, hvis objektet er en underklasse af classinfo eller tuple of classes.
  2. Falsk returneres, hvis objektet ikke er en underklasse af classinfo eller tuple of classes.

Hvis classinfo i en bestemt situation ikke er en type eller en slags slags, hæves en typefejlundtagelse på brugerens skærm.

Eksempler

For at forstå brugen af ​​isinstance bedre, lad os se på et par eksempler.

Eksempel nr. 1

klasse Foo: a = 5 fooInstance = Foo () print (isinstance (fooInstance, Foo)) print (isinstance (fooInstance, (list, tuple))) print (isinstance (fooInstance, (list, tuple, Foo)))

Produktion

Sand

Falsk

Sand

Isinstance In Python: Eksempel # 2

numbers = [1, 2, 3] result = isinstance (numbers, list) print (numbers, 'instance of list?', result) result = isinstance (numbers, dict) print (numbers, 'instance of dict?', result ) resultat = isinstans (tal, (dict, liste)) print (tal, 'forekomst af dict eller liste?', resultat) nummer = 5 resultat = isinstance (nummer, liste) print (nummer, 'eksempel på liste?', resultat) resultat = isinstans (nummer, int) udskrivning (nummer, 'forekomst af int?', resultat)

Produktion

[1, 2, 3] forekomst af listen? Sand

hvad der er overmontering i maskinlæring

[1, 2, 3] forekomst af dict? Falsk

[1, 2, 3] forekomst af dict eller liste? Sand

5 forekomst af listen? Falsk

5 forekomst af int? Sand

Eksempel 3

# Python-kode for isinstance () klasse Test: a = 5 TestInstance = Test () print (isinstance (TestInstance, Test)) print (isinstance (TestInstance, (list, tuple))) print (isinstance (TestInstance, (list, tuple) , Test)))

Produktion

Sand

Falsk

Sand

Lad os fortsætte med 'Isinstance In Python' artiklen og forstå brugen af ​​Type-metoden,

Brugen af ​​Type in Python

I lighed med isinstance er der en anden indbygget metode i Python, som bruges til at kontrollere typen pf-variabel, der bruges under kørsel. Hvis et enkelt argument eller objekt sendes gennem typemetoden, returnerer den typen af ​​objektet, der bruges i løbetid.

For at forstå dette bedre skal du kigge på eksemplet nedenfor.

Isinstance In Python: Eksempel # 1.1

# Pythonkodetype () med en enkelt objektparameter x = 5 s = 'sampleoutput' y = [1,2,3] print (type (x)) print (type (s)) print (type (y))

Produktion

klasse 'int'

klasse 'str'

klasse 'liste'

Eksempel # 1.2

# Python-kode for type () med et navn, # baser og dict-parameter o1 = type ('X', (objekt,), dict (a = 'Foo', b = 12)) print (type (o1)) print (vars (o1)) klassetest: a = 'Foo' b = 12 o2 = type ('Y', (test,), dict (a = 'Foo', b = 12)) print (type (o2)) udskrive (vars (o2))

Produktion

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

{‘B’: 12, ‘a’: ‘Foo’, ‘__doc__ ': Ingen}

Lad os sammenligne Type og Isinstance i Python,

Forskel mellem Type () og Isinstance

Type og isinstance i Python tjener to meget forskellige funktioner. Se på nedenstående tip for at forstå forskellen mellem dem bedre.

  1. Hvis du har brug for at kontrollere, om et objekt har en bestemt type, er det bedst at bruge isinstance. Dette skyldes, at isinstansen vil være i stand til at kontrollere, om det objekt, der sendes i det første argument, er af samme type som det, der blev sendt i det andet argument.
  2. På den anden side er brugen af ​​type mere foretrukket, når du skal kontrollere typen af ​​et bestemt objekt og ikke sammenligne det med et andet.

Eksempel

#Python-kode for at illustrere andeattypningsklasse Bruger (objekt): def __init __ (selv, fornavn): self.firstname = fornavn @property def name (self): return self.firstname class Animal (object): pass class Fox (Animal) : name = 'Fox' class Bear (Animal): name = 'Bear' # Brug .name-attributten (eller egenskaben) uanset typen for en i [Bruger ('SampleOutput'), Fox (), Bear ()] : udskriv (a.name)

Produktion

Eksempel på output

Ræv

Bjørn

En anden grund til ikke at bruge typemetoden er manglen på arv. Se eksemplerne nedenfor for at forstå dette bedre.

Opret ec2-forekomst fra øjebliksbillede
#python-kode for at illustrere manglen på #support til arv i type () klasse MyDict (dict): '' 'En normal dict, der altid oprettes med en' initial 'nøgle' ​​'' def __init __ (selv): selv [ 'initial'] = 'nogle data' d = MyDict () print (type (d) == dict) print (type (d) == MyDict) d = dict () print (type (d) == dict) print (type (d) == MyDict)

Produktion

Falsk

Sand

Sand

Falsk

Så det er det, dette bringer os til slutningen af ​​denne artikel. Jeg håber, du har forstået Isinstance i Python, og hvad det gør.

For at få dybdegående viden om Python sammen med dens forskellige applikationer kan du til live online træning med support døgnet rundt og adgang til hele livet.

Har du et spørgsmål til os? Nævn dem i kommentarfeltet i denne artikel, så vender vi tilbage til dig.