Kas yra „Isinstance“ sistemoje „Python“ ir kaip ją įgyvendinti?



Šis straipsnis supažindins jus su metodu, kuris yra „Isinstance“ sistemoje „Python“, ir pateiks išsamų konceptualų paaiškinimą su demonstracija.

yra viena iš galingiausių šiandien rinkoje esančių programavimo kalbų. „Python“ taip pat palaiko kitų programavimo kalbų diegimą savo ekosistemoje, pvz., „Java“, „C“ ir „C ++“. Iš daugelio modulių ir funkcijų, kurios yra prieinamos „Python“ ekosistemoje, viena iš kitų išsiskiria „Python“ esme. Taigi šiame straipsnyje mes išsamiai kalbėsime apie esmę, jo naudojimą ir ypatybes, kurias jis pateikia ant stalo.

Tolimesni patarimai bus aptarti šiame straipsnyje,





Pradėkime!

Kas yra „Isinstance“ „Python“?

„Python“ esmė yra naudojama norint patikrinti, ar pirmasis objektas, kuris yra argumentas, yra „classinfo“ klasės egzempliorius ar poklasis, kuris yra antrasis argumentas.



„Python“ izinstancijos sintaksė yra tokia.

isinstance (objektas, klasės informacija)

Pažiūrėkime, kokius parametrus ir grąžinimo vertę turi „Isinstance“ sistemoje „Python“,



Isinstance parametras ir grąžinimo vertė

Parametras

Dabar, kai jūs žinote apie isinstance sintaksę, atidžiau pažvelkime į parametrą, į kurį jis atsižvelgia.

  1. Objektas: tai objektas, kurį reikia patikrinti.
  2. „Classinfo“: tai klasė, informacija arba klasių grupė, pagal kurias reikia patikrinti objektą.

Grąžinimo vertė

Kai isinstance naudojama programoje, grąžinimo vertė priklauso nuo kelių sąlygų, kaip paaiškinta žemiau esančiose nuorodose.

  1. Tiesa yra grąžinama, jei objektas yra klasės informacijos poklasis arba klasių paketas.
  2. Netinkamas yra grąžinamas, jei objektas nėra klasės informacijos poklasis arba klasių paketas.

Jei tam tikroje situacijoje „classinfo“ nėra tipas arba tipų paketas, tada vartotojo klaidos ekrane iškeliama tipo klaidos išimtis.

Pavyzdžiai

Norėdami geriau suprasti izotransporto naudojimą, pažvelkime į keletą pavyzdžių.

skirtumas tarp c c # ir c ++

1 pavyzdys

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

Rezultatas

Tiesa

Klaidinga

Tiesa

„Isinstance“ sistemoje „Python“: 2 pavyzdys

skaičiai = [1, 2, 3] rezultatas = isinstance (skaičiai, sąrašas) spausdinti (numeriai, 'sąrašo egzempliorius?', rezultatas) rezultatas = isinstance (skaičiai, diktantas) spausdinti (skaičiai, 'diktanto egzempliorius?', rezultatas ) rezultatas = isinstance (numeriai, (diktatas, sąrašas)) spausdinti (skaičiai, 'diktanto ar sąrašo egzempliorius?', rezultatas) skaičius = 5 rezultatas = isinstance (numeris, sąrašas) spausdinti (skaičius, 'sąrašo egzempliorius?', rezultatas) rezultatas = isinstance (skaičius, int) spausdinimas (skaičius, „int pavyzdys?“, rezultatas)

Rezultatas

[1, 2, 3] sąrašo egzempliorius? Tiesa

[1, 2, 3] dikto pavyzdys? Klaidinga

[1, 2, 3] dikto ar sąrašo pavyzdys? Tiesa

5 sąrašo egzemplioriai? Klaidinga

.trim () java

5 atvejis int? Tiesa

3 pavyzdys

# „Isinstance“ () klasės „Test“ Python kodas: a = 5 TestInstance = Test () print (isinstance (TestInstance, Test)) print (isinstance (TestInstance, (list, tuple))) print (isinstance (TestInstance, (list, tuple) , Bandymas)))

Rezultatas

Tiesa

Klaidinga

Tiesa

Tęskime straipsnį „Isinstance In Python“ ir supraskime „Type“ metodo naudojimą,

Tipo naudojimas „Python“

Panašiai kaip „isinstance“, „Python“ yra dar vienas įmontuotas metodas, naudojamas patikrinti kintamąjį pf, kuris naudojamas vykdymo metu. Jei per tipo metodą perduodamas vienas argumentas ar objektas, jis pateikia objekto, kuris naudojamas vykdymo metu, tipą.

Norėdami tai geriau suprasti, pažvelkite į toliau pateiktą pavyzdį.

„Isinstance“ sistemoje „Python“: 1.1 pavyzdys

# „Python“ kodo tipas () su vienu objekto parametru x = 5 s = 'sampleoutput' y = [1,2,3] print (type (x)) print (type (s)) print (type (y))

Rezultatas

klasė „int“

klasė „str“

klasės „sąrašas“

1.2 pavyzdys

# „Python“ kodas tipui () su pavadinimu, # bazėmis ir diktuojamu parametru o1 = type ('X', (object,), dict (a = 'Foo', b = 12)) print (type (o1)) print (vars (o1)) klasės testas: a = 'Foo' b = 12 o2 = type ('Y', (test,), dict (a = 'Foo', b = 12)) print (type (o2)) spausdinti (vars (o2))

Rezultatas

fibonacci c ++ rekursinis

{‘B’: 12, ‘a’: ‘Foo’, ‘__dict__’:, ‘__doc__’: Nėra, ‘__weakref__’:}

{‘B’: 12, „a“: „Foo“, „__doc__“: nėra}

Palyginkime „Python“ tipą ir „Isinstance“,

Tipo () ir Isinstance skirtumas

„Python“ tipas ir „isinstance“ atlieka dvi labai skirtingas funkcijas. Pažvelkite į žemiau pateiktas nuorodas, kad geriau suprastumėte jų skirtumus.

  1. Jei reikia patikrinti, ar objektas turi tam tikrą tipą, geriausia naudoti „isinstance“. Taip yra todėl, kad izinstancija galės patikrinti, ar pirmajame argumente perduotas objektas yra tokio paties tipo, kaip ir antrojo argumento.
  2. Kita vertus, tipo naudojimas yra labiau pageidaujamas, kai reikia paprasčiausiai patikrinti konkretaus objekto tipą ir jo nepalyginti su kitu.

Pavyzdys

#Python kodas, iliustruojantis ančių rašymo klasę Vartotojas (objektas): def __init __ (savęs, vardo): savivardas = vardas @ nuosavybės def vardas (savarankiškai): grąžinti savivardės klasę Gyvūnas (objektas): perduoti klasę Lapė (Gyvūnas) : name = 'Fox' class Bear (Animal): name = 'Bear' # Naudokite atributą .name (arba ypatybę), neatsižvelgdami į [User ('SampleOutput'), Fox (), Bear ()] tipą. : spausdinti (a.name)

Rezultatas

SampleOutput

Lapė

Turėti

Kita priežastis nenaudoti tipo metodo yra paveldėjimo nebuvimas. Pažvelkite į žemiau pateiktus pavyzdžius, kad tai geriau suprastumėte.

#python kodas, iliustruojantis, kad trūksta #support paveldėjimo tipo () klasėje MyDict (dict): '' 'Normalus diktantas, kuris visada kuriamas naudojant' pradinį 'raktą' 'def __init __ (self): self [ 'pradinis'] = 'kai kurie duomenys' d = MyDict () spausdinti (tipas (d) == dict) spausdinti (tipas (d) == MyDict) d = dict () spausdinti (type (d) == dict) spausdinti (tipas (d) == „MyDict“)

Rezultatas

Klaidinga

Tiesa

Tiesa

Klaidinga

Taigi, tai, vaikinai, tai priveda prie šio straipsnio pabaigos. Tikiuosi, kad supratote „Isinstance“ sistemoje „Python“ ir ką ji veikia.

Norėdami gauti išsamių žinių apie „Python“ kartu su įvairiomis jo programomis, galite tiesioginėms internetinėms treniruotėms, palaikančioms visą parą visą parą ir visą gyvenimą.

Turite mums klausimą? Paminėkite juos šio straipsnio komentarų skyriuje ir mes susisieksime su jumis.