Mikä on Isinstance Pythonissa ja miten se toteutetaan?



Tämä artikkeli tutustuttaa sinut menetelmään, joka on Isinstance Pythonissa, ja antaa sinulle perusteellisen käsitteellisen selityksen esittelyllä.

on yksi tehokkaimmista ohjelmointikielistä, joka on saatavilla markkinoilla tänään. Python tukee myös muiden ohjelmointikielien käyttöönottoa ekosysteemissään, kuten Java, C sekä C ++. Python-ekosysteemissä käytettävissä olevista monista moduuleista ja toiminnoista yksi niistä, joka erottuu muista, on Pythonin isinstanssi. Siksi tässä artikkelissa puhumme yksityiskohtaisesti isinstanssista, sen käyttötavoista ja ominaisuuksista, jotka se tuo pöytään.

Seuraavat vihjeet käsitellään tässä artikkelissa,





ohita viittaus java

Aloitetaanpa!

Mikä on Isinstance Pythonissa?

Python-isstanssia käytetään tarkistamaan, onko ensimmäinen objekti, joka on argumentti, luokan argumentti tai alaluokka, joka on toinen argumentti.



Pythonin isinstanssin syntaksi on seuraava.

isinstance (esine, luokkainfo)

Katsotaanpa, mitkä parametrit ja palautusarvo Isinstancella Pythonissa ovat,



Isinstancen parametri ja palautusarvo

Parametri

Nyt kun olet tietoinen isinstanssin syntaksista, katsokaamme tarkemmin parametria, jonka se ottaa huomioon.

  1. Objekti: Tämä on objekti, joka on tarkistettava.
  2. Classinfo: Tämä luokka, tieto tai luokkien joukko, johon objekti on tarkistettava.

Palautusarvo

Kun isinstanssia käytetään ohjelmassa, paluuarvo riippuu useista ehdoista, kuten alla olevissa viitteissä selitetään.

  1. True palautetaan, jos objekti on classinfon tai luokkien alaluokka.
  2. False palautetaan, jos objekti ei ole classinfon tai luokkien alaluokka.

Jos tietyssä tilanteessa classinfo ei ole tyyppi tai joukko tyyppejä, tyypin virhe-poikkeus nostetaan käyttäjän näyttöön.

Esimerkkejä

Katsotaanpa muutama esimerkki ymmärtääksemme isinstanssin käyttöä paremmin.

Esimerkki 1

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

Tuotos

Totta

Väärä

Totta

Isinstance Pythonissa: Esimerkki 2

numerot = [1, 2, 3] tulos = isinstance (numerot, luettelo) tulosta (numerot, 'luettelon esiintymä?', tulos) tulos = isinstance (numerot, sanele) tulosta (numerot, 'sanelu sanotaan?', tulos ) tulos = isinstance (numerot, (dict, luettelo)) tulosta (numerot, 'diktin tai luettelon esiintymä?', tulos) numero = 5 tulos = isinstance (numero, luettelo) tulosta (numero, 'luettelon esiintymä?', tulos) tulos = isinstance (numero, int) tulosta (numero, 'int-instanssi?', tulos)

Tuotos

staattinen jäsenfunktio c ++

[1, 2, 3] luettelon esiintymä? Totta

[1, 2, 3] sanelun esimerkki? Väärä

[1, 2, 3] sanelun tai luettelon esiintymä? Totta

5 esimerkkiä luettelosta? Väärä

5 instanssia int? Totta

Esimerkki 3

# Isinstance () -luokan testin Python-koodi: a = 5 TestInstance = Test () print (isinstance (TestInstance, Test)) print (isinstance (TestInstance, (list, tuple))) print (isinstance (TestInstance, (list, tuple) , Testi)))

Tuotos

Totta

Väärä

Totta

Jatka 'Isinstance In Python' -artikkelilla ja ymmärrä Type-menetelmän käyttö,

Tyypin käyttö Pythonissa

Samoin kuin isinstanssissa, Pythonissa on toinen sisäänrakennettu menetelmä, jota käytetään ajon aikana käytetyn pf-muuttujan tarkistamiseen. Jos tyyppimenetelmän kautta välitetään yksi argumentti tai objekti, se palauttaa ajon aikana käytetyn objektin tyypin.

Voit ymmärtää tämän paremmin katsomalla alla olevaa esimerkkiä.

Isinstance Pythonissa: Esimerkki # 1.1

# Python-koodityyppi () yhdellä objektiparametrilla x = 5 s = 'sampleoutput' y = [1,2,3] print (type (x)) print (type (s)) print (type (y))

Tuotos

luokka 'int'

luokka 'str'

luokka 'luettelo'

Esimerkki # 1.2

# Python-koodi tyypille (), jolla on nimi, # basees ja dict-parametri o1 = type ('X', (object,), dict (a = 'Foo', b = 12)) print (type (o1)) print (vars (o1)) luokan testi: a = 'Foo' b = 12 o2 = type ('Y', (test,), dict (a = 'Foo', b = 12)) print (type (o2)) tulosta (vars (o2))

Tuotos

{’B’: 12, ‘a’: ’Foo’, ’__dict__’:, ’__doc__’: Ei mitään, ’__weakref__’:}

{’B’: 12, ’a’: ’Foo’, ’__doc__’: Ei mitään}

Verratkaamme tyyppiä ja Isinstancea Pythonissa,

Ero tyypin () ja isinstanssin välillä

Pythonin tyyppi ja isinstanssi palvelevat kahta hyvin erilaista toimintoa. Katso alla olevia viitteitä ymmärtääksesi niiden välisen eron paremmin.

  1. Jos haluat tarkistaa, onko objektilla tietty tyyppi, on parasta käyttää isinstanssia. Tämä johtuu siitä, että isinstanssi pystyy tarkistamaan, onko ensimmäisessä argumentissa välitetty objekti samantyyppinen kuin toisessa argumentissa.
  2. Toisaalta tyypin käyttö on suositeltavampaa, kun sinun on yksinkertaisesti tarkistettava tietyn objektin tyyppi eikä vertaa sitä toiseen.

Esimerkki

#Python-koodi ankan kirjoittamisen luokan havainnollistamiseksi Käyttäjä (objekti): def __init __ (itse, etunimi): itse.sukunimi = etunimi @ omaisuuden määritysnimi (itse): palauta etunimen luokka Eläin (objekti): välittää luokan Fox (Eläin) : name = 'Fox' class Bear (Animal): name = 'Bear' # Käytä .name -attribuuttia (tai ominaisuutta) riippumatta a-tyypistä kohdassa [User ('SampleOutput'), Fox (), Bear ()] : tulosta (nimi)

Tuotos

Näyteulostulo

amazon ec2 -opetusohjelma aloittelijoille

Kettu

Karhu

Toinen syy olla käyttämättä tyypin menetelmää on perinnön puute. Katsokaa alla jaettuja esimerkkejä ymmärtääksesi tämän paremmin.

#python-koodi havainnollistamaan #supportin puutetta perinnölle tyypin () luokassa MyDict (dict): '' 'Normaali sanelu, joka luodaan aina' alkuperäisellä avaimella '' def __init __ (itse): itse [ 'alkuperäinen'] = 'joitain tietoja' d = MyDict () print (type (d) == dict) print (type (d) == MyDict) d = dict () print (type (d) == dict) print (kirjoita (d) == MyDict)

Tuotos

Väärä

Totta

Totta

Väärä

Joten tämä se kaverit, tämä johtaa meidät tämän artikkelin loppuun. Toivon, että olet ymmärtänyt Isinstancen Pythonissa ja mitä se tekee.

Voit saada syvällistä tietoa Pythonista sen eri sovellusten kanssa live-verkkokoulutukseen 24/7 tuella ja käyttöikä.

Onko sinulla kysymys meille? Mainitse ne tämän artikkelin kommenttiosassa ja palaamme sinuun.