az egyik legerősebb programozási nyelv, amely ma elérhető a piacon. A Python emellett támogatja más programozási nyelvek bevezetését az ökoszisztémájában, mint a Java, C, valamint a C ++. A Python ökoszisztémában rendelkezésre álló számos modul és funkció közül az egyik a többi közül kiemelkedik a Python-ban található. Így ebben a cikkben részletesen fogunk beszélni az isinstance-ról, annak felhasználásáról és az asztalra hozott jellemzőiről.
A következő hivatkozásokkal foglalkozunk ebben a cikkben,
- Mi az Isinstance a Pythonban?
- Az Isinstance paramétere és visszatérési értéke
- A Type használata a Pythonban
- Különbség a Type () és az Isinstance között
Mi az Isinstance a Pythonban?
A Python isinstance segítségével ellenőrizhető, hogy az első objektum, amely az argumentum, a classinfo osztály egy példánya vagy alosztálya, amely a második argumentum.
Az isinstance szintaxisa a Pythonban a következő.
mvc architektúra java példával
isinstance (objektum, classinfo)
Nézzük meg, milyen paraméterekkel és visszatérési értékkel rendelkezik az Isinstance a Pythonban,
Az Isinstance paramétere és visszatérési értéke
Paraméter
Most, hogy tisztában van az isinstance szintaxisával, nézzük meg közelebbről azt a paramétert, amelyet figyelembe vesz.
- Objektum: Ezt az objektumot kell ellenőrizni.
- Classinfo: Ez az osztály, információ vagy osztályok összessége, amelyek ellen az objektumot ellenőrizni kell.
Visszatérési érték
Amikor az isinstance-t egy programban használják, a visszatérési érték számos feltételtől függ, amint azt az alábbi mutatók mutatják.
- A True érték akkor adódik vissza, ha az objektum a classinfo vagy osztályok osztályának egy alosztálya.
- A False értéket adjuk vissza, ha az objektum nem az osztályinfó vagy osztályok alosztálya.
Ha egy adott helyzetben a classinfo nem típus vagy több típus, akkor egy typeerror kivétel kerül a felhasználó képernyőjére.
Példák
Hogy jobban megértsük az isinstance használatát, vessünk egy pillantást néhány példára.
1. példa
Foo osztály: a = 5 fooInstance = Foo () print (isinstance (fooInstance, Foo)) print (isinstance (fooInstance, (list, tuple))) print (isinstance (fooInstance, (list, tuple, Foo)))
Kimenet
Igaz
Hamis
Igaz
Isinstance a Pythonban: 2. példa
számok = [1, 2, 3] eredmény = isinstance (számok, lista) nyomtatás (számok, 'lista példánya?', eredmény) eredmény = isinstance (számok, diktálás) nyomtatás (számok, 'diktálás példánya?', eredmény ) result = isinstance (számok, (dict, lista)) print (számok, 'dict vagy list példánya?', eredmény) number = 5 eredmény = isinstance (szám, lista) print (szám, 'lista példánya?', eredmény) eredmény = isinstance (szám, int) nyomtatás (szám, 'int példánya?', eredmény)
Kimenet
[1, 2, 3] lista példánya? Igaz
[1, 2, 3] diktált eset? Hamis
[1, 2, 3] dict vagy list példány? Igaz
5 példány a listáról? Hamis
5 példánya int? Igaz
3. példa
# Python kód az isinstance () osztályhoz Test: a = 5 TestInstance = Test () print (isinstance (TestInstance, Test)) print (isinstance (TestInstance, (list, tuple))) print (isinstance (TestInstance, (list, tuple) , Teszt)))
Kimenet
Igaz
Hamis
Igaz
Folytassuk az „Isinstance In Python” cikkel, és értsük meg a Type módszer használatát,
A Type használata a Pythonban
Az isinstance-hez hasonlóan van egy másik beépített módszer is a Pythonban, amelyet a futás közben használt pf változó ellenőrzésére használnak. Ha egyetlen argumentum vagy objektum kerül átadásra a type metóduson keresztül, akkor az a futás közben használt objektum típusát adja vissza.
Ennek jobb megértéséhez nézze meg az alábbi példát.
Isinstance a Pythonban: 1.1. Példa
# Python kódtípus () egyetlen objektumparaméterrel x = 5 s = 'sampleoutput' y = [1,2,3] print (type (x)) print (type (s)) print (type (y))
Kimenet
különbség a túlterhelés és a felülbírálás között
„int” osztály
„str” osztály
osztály „lista”
1.2. Példa
# Python-kód a type () névhez, # bázisok és dict paraméterhez o1 = type ('X', (object,), dict (a = 'Foo', b = 12)) print (type (o1)) print (vars (o1)) osztályteszt: a = 'Foo' b = 12 o2 = type ('Y', (test,), dict (a = 'Foo', b = 12)) print (type (o2)) nyomtatás (vars (o2))
Kimenet
{’B’: 12, ’a’: ’Foo’, ’__dict__’:, ’__doc__’: Nincs, ’__weakref__’:}
{’B’: 12, ’a’: ’Foo’, ’__doc__’: Nincs}
Hasonlítsuk össze a Type és az Isinstance Python-ban,
Különbség a Type () és az Isinstance között
A Python típusa és az isinstance két nagyon különböző funkciót tölt be. Vessen egy pillantást az alábbi mutatókra, hogy jobban megértse a köztük lévő különbséget.
- Ha ellenőriznie kell, hogy egy objektumnak van-e egy bizonyos típusa, akkor a legjobb, ha az isinstance-t használja. Az isinstance ugyanis képes lesz ellenőrizni, hogy az első argumentumban átadott objektum ugyanolyan típusú-e, mint a második argumentumban.
- Másrészt a típus használata előnyösebb, ha egyszerűen ellenőriznie kell egy adott objektum típusát, és nem kell összehasonlítania egy másikkal.
Példa
#Python kód a kacsa gépelési osztályának szemléltetésére Felhasználó (objektum): def __init __ (saját, keresztnév): self.firstname = keresztnév @property def név (self): return self.firstname osztály Animal (object): pass class Fox (Animal) : name = 'Fox' class Bear (Animal): name = 'Bear' # Használja a .name attribútumot (vagy tulajdonságot), a [User ('SampleOutput'), Fox (), Bear ()] típusától függetlenül. : print (a.név)
Kimenet
SampleOutput
Róka
Medve
Egy másik ok, hogy ne alkalmazzuk a típusú módszert, az öröklés hiánya. Vessen egy pillantást az alábbiakban megosztott példákra, hogy jobban megértse ezt.
#python kód az #support hiányának szemléltetésére az örökléshez a type () osztályban MyDict (dict): '' 'Normál dict, amelyet mindig' kezdeti 'kulccsal' 'def __init __ (self): self [ 'kezdeti'] = 'néhány adat' d = MyDict () print (type (d) == dict) print (type (d) == MyDict) d = dict () print (type (d) == dict) print (írja be (d) == MyDict)
Kimenet
fordítsa az objektumot tömb php-be
Hamis
Igaz
Igaz
Hamis
Tehát ez a srácok, ezzel a cikk végére érünk. Remélem, megértette az Isinstance-t a Python-ban és mit csinál.
Ha részletes ismereteket szeretne szerezni a Pythonról és annak különböző alkalmazásokról, megteheti élő online képzéshez, napi 24 órás támogatással és életre szóló hozzáféréssel.
Van egy kérdésünk? Említse meg őket a cikk megjegyzés rovatában, és mi kapcsolatba lépünk Önnel.