Kas ir Isinstance Python un kā to ieviest?



Šis raksts jūs iepazīstinās ar metodi, kas ir Isinstance Python, un sniegs jums rūpīgu konceptuālu skaidrojumu ar demonstrāciju.

ir viena no visspēcīgākajām programmēšanas valodām, kas mūsdienās ir pieejama tirgū. Python atbalsta arī citu programmēšanas valodu ieviešanu savā ekosistēmā, piemēram, Java, C, kā arī C ++. No daudzajiem moduļiem un funkcijām, kas ir pieejamas Python ekosistēmā, viens no tiem, kas izceļas starp pārējiem, ir Python būtība. Tādējādi šajā rakstā mēs sīki runāsim par būtību, tā lietojumu un funkcijām, kuras tas rada tabulā.

Šajā rakstā tiks apskatīti šādi norādījumi,





Sāksim!

Kas ir Isinstance Python versijā?

Python izinstance tiek izmantota, lai pārbaudītu, vai pirmais objekts, kas ir arguments, ir klasesinfo klases instance vai apakšklase, kas ir otrais arguments.



Isinstances sintakse Python ir šāda.

isinstance (objekts, klases informācija)

Apskatīsim, kādi parametri un atgriešanās vērtība ir Isinstance Python,



Isinstance parametrs un atgriešanās vērtība

Parametrs

Tagad, kad esat informēts par isinstance sintaksi, ļaujiet mums sīkāk aplūkot parametru, ko tas ņem vērā.

  1. Objekts: Šis ir objekts, kas jāpārbauda.
  2. Classinfo: šī klase, informācija vai klašu kopa, pret kuru jāpārbauda objekts.

Atgriešanās vērtība

Ja isinstance tiek izmantota programmā, atgriešanās vērtība ir atkarīga no vairākiem nosacījumiem, kā paskaidrots zemāk esošajās norādēs.

  1. Patiesība tiek atgriezta, ja objekts ir classinfo apakšklase vai klašu kopa.
  2. Nepatiesa tiek atgriezta, ja objekts nav classinfo apakšklase vai klašu kopa.

Ja noteiktā situācijā classinfo nav tips vai tipu kopa, tad uz lietotāja ekrāna tiek parādīts typeerror izņēmums.

Piemēri

Lai labāk saprastu vielas lietošanu, apskatīsim dažus piemērus.

1. piemērs

kas ir sinhronizācija java
klase Foo: a = 5 fooInstance = Foo () print (isinstance (fooInstance, Foo)) print (isinstance (fooInstance, (list, tuple))) print (isinstance (fooInstance, (list, tuple, Foo)))

Rezultāts

Patiesi

Nepatiesa

Patiesi

Isinstance Python: 2. piemērs

numuri = [1, 2, 3] rezultāts = izņēmums (numuri, saraksts) izdruka (numuri, 'saraksta eksemplārs?', rezultāts) rezultāts = vienaudze (numuri, dikti) drukāt (numuri, 'dikta gadījums?', rezultāts ) rezultāts = isinstance (numuri, (dikti, saraksts)) drukāt (numuri, 'diktēta vai saraksta gadījums?', rezultāts) skaitlis = 5 rezultāts = būtība (numurs, saraksts) drukāt (numurs, 'saraksta eksemplārs?', rezultāts) rezultāts = isinstance (skaitlis, int) druka (skaitlis, 'int gadījums?', rezultāts)

Rezultāts

[1, 2, 3] saraksta gadījums? Patiesi

[1, 2, 3] diktēta instance? Nepatiesa

[1, 2, 3] dikta vai saraksta gadījums? Patiesi

5 gadījumu saraksts? Nepatiesa

5 inst gadījums? Patiesi

3. piemērs

# Python kods isinstance () klases testam: a = 5 TestInstance = Test () print (isinstance (TestInstance, Test)) print (isinstance (TestInstance, (list, tuple))) print (isinstance (TestInstance, (list, tuple) , Pārbaude)))

Rezultāts

Patiesi

Nepatiesa

Patiesi

Turpināsim ar rakstu “Isinstance In Python” un sapratīsim Type veida izmantošanu,

Type izmantošana Python

Līdzīgi kā būtībā, Python ir vēl viena iebūvēta metode, ko izmanto, lai pārbaudītu izpildlaika laikā izmantoto mainīgā tipa pf mainīgo. Ja caur tipa metodi tiek nodots viens arguments vai objekts, tas atgriež izpildlaika laikā izmantotā objekta tipu.

Lai to labāk saprastu, ieskatieties zemāk redzamajā piemērā.

Isinstance Python: 1.1. Piemērs

# Python koda tips () ar viena objekta parametru x = 5 s = 'sampleoutput' y = [1,2,3] print (type (x)) print (type (s)) print (type (y))

Rezultāts

klase “int”

klase “str”

klases ‘saraksts’

java saņem datumu no virknes

1.2. Piemērs

# Python kods tipam () ar nosaukumu, # bases un dict parametru o1 = type ('X', (object,), dict (a = 'Foo', b = 12)) print (type (o1)) print (vars (o1)) klases tests: a = 'Foo' b = 12 o2 = type ('Y', (test,), dict (a = 'Foo', b = 12)) print (type (o2)) drukāt (vars (o2))

Rezultāts

{’B’: 12, ‘a’: ‘Foo’, ‘__dict__’:, ‘__doc__’: Nav, ‘__weakref__’:}

java kods, lai pārtrauktu programmu

{’B’: 12, ‘a’: ‘Foo’, ‘__doc__’: nav}

Salīdzināsim veidu un Isinstance Python,

Atšķirība starp tipu () un Isinstance

Python tips un izstance kalpo divām ļoti atšķirīgām funkcijām. Apskatiet tālāk norādītās norādes, lai labāk izprastu atšķirību starp tām.

  1. Ja jums jāpārbauda, ​​vai objektam ir noteikts tips, vislabāk ir izmantot isinstance. Tas ir tāpēc, ka isinstance varēs pārbaudīt, vai pirmajā argumentā nodotais objekts ir tāda paša veida kā otrais arguments.
  2. No otras puses, veida lietošana ir vēlamāka, ja jums vienkārši jāpārbauda konkrētā objekta tips, nevis jāsalīdzina ar citu.

Piemērs

#Python kods, lai ilustrētu pīļu rakstīšanas klasi Lietotājs (objekts): def __init __ (sevis, vārds): self.firstname = vārds @property def name (self): return self.firstname class Animal (object): pass class Fox (Animal) : name = 'Fox' klases lācis (dzīvnieks): name = 'lācis' # Izmantojiet atribūtu .name (vai rekvizītu) neatkarīgi no veida [Lietotājs ('SampleOutput'), Lapsa (), Lācis ()] veida. : drukāt (a.name)

Rezultāts

SampleOutput

Lapsa

Lācis

Vēl viens iemesls neizmantot tipa metodi ir mantojuma trūkums. Apskatiet tālāk sniegtos piemērus, lai to labāk saprastu.

#python kods, lai ilustrētu mantojuma #support trūkumu type () klasē MyDict (dict): '' 'Parasts diktāts, kas vienmēr tiek izveidots ar' sākotnējo 'atslēgu' 'def __init __ (self): self [ 'sākotnējais'] = 'daži dati' d = MyDict () print (type (d) == dict) print (type (d) == MyDict) d = dict () print (type (d) == dict) print (tips (d) == MyDict)

Rezultāts

Nepatiesa

Patiesi

Patiesi

Nepatiesa

Tā tas puiši, tas mūs noved pie šī raksta beigām. Es ceru, ka jūs esat sapratis Isinstance Python un ko tā dara.

Lai iegūtu padziļinātas zināšanas par Python kopā ar dažādām lietojumprogrammām, varat tiešsaistes apmācībai tiešsaistē ar diennakts atbalstu un piekļuvi mūža garumā.

Vai mums ir jautājums? Pieminiet tos šī raksta komentāru sadaļā, un mēs ar jums sazināsimies.