Type () i isinstance () u Pythonu s primjerima

Sadržaj:

Anonim

Što je type () u Pythonu?

Python ima ugrađenu funkciju koja se naziva type () koja vam pomaže pronaći tip klase varijable koja je data kao ulaz. Na primjer, ako je ulaz niz, dobit ćete izlaz kao , za popis će to biti itd.

Upotrebom naredbe type () možete proslijediti jedan argument, a povratna vrijednost bit će vrsta klase navedenog argumenta, primjer: type (object).

Također je moguće proslijediti tri argumenta type (), tj. Type (ime, baze, dikt), u tom će vam slučaju vratiti novi objekt tipa.

U ovom vodiču naučit ćete:

  • Što je type () u Pythonu?
  • Sintaksa za type ():
  • Primjer vrste ()
  • Primjer: Upotreba tipa () za objekt klase.
  • Primjer: Upotreba imena, osnova i dikta u vrsti ()
  • Što je isinstance () u Pythonu?
  • Sintaksa jeinstance ():
  • Primjeri isinstance ()
  • Razlika između tipa () i isinstance () u Pythonu

Sintaksa za type ():

type () može se koristiti na dva načina kao što je prikazano u nastavku:

type(object)type(namr, bases, dict)

Parametri : vrsta (objekt)

  • objekt: Ovo je obvezni parametar. Ako je ovo samo parametar proslijeđen tipu (), vratit će vam vrstu parametra.

Parametri : vrsta (ime, osnova, dikt)

  • ime: naziv klase.
  • baze: (neobavezno). Ovo je neobavezni parametar i osnovna je klasa
  • dikt: (neobavezno). Ovo je neobavezni parametar i to je prostor imena koji ima definiciju klase.

Povratna vrijednost:

Ako je objekt jedini parametar prosljeđen type (), vratit će vam vrstu objekta.

Ako su parametri prosljeđeni tipu vrsta (objekt, baze, dikt), u tom će slučaju vratiti novu vrstu objekta.

Primjer vrste ()

U ovom primjeru imamo vrijednost niza, broj, plutajuću vrijednost, složeni broj, popis, tuple, dikt i skup. Upotrijebit ćemo varijable s tipom da bismo vidjeli izlaz za svaku od njih.

str_list = "Welcome to Guru99"age = 50pi = 3.14c_num = 3j+10my_list = ["A", "B", "C", "D"]my_tuple = ("A", "B", "C", "D")my_dict = {"A":"a", "B":"b", "C":"c", "D":"d"}my_set = {'A', 'B', 'C', 'D'}print("The type is : ",type(str_list))print("The type is : ",type(age))print("The type is : ",type(pi))print("The type is : ",type(c_num))print("The type is : ",type(my_list))print("The type is : ",type(my_tuple))print("The type is : ",type(my_dict))print("The type is : ",type(my_set))

Izlaz:

The type is :The type is :The type is :The type is :The type is :The type is :The type is :The type is :

Primjer: Upotreba tipa () za objekt klase.

Kada provjerite objekt stvoren iz klase pomoću type (), on vraća vrstu klase zajedno s imenom klase. U ovom primjeru stvorit ćemo klasu i provjeriti vrstu objekta stvorenu iz testa klase.

class test:s = 'testing't = test()print(type(t))

Izlaz:

Primjer: Upotreba imena, osnova i dikta u vrsti ()

Tip se također može nazvati koristeći sintaksu: type (ime, baze, dikt).

Tri parametra prenesena na type (), tj. Ime, baze i dikt komponente su koje čine definiciju klase. Ime predstavlja ime klase, baza je osnovna klasa, a dict je rječnik atributa osnovne klase.

U ovom ćemo primjeru upotrijebiti sva tri parametra, tj. Naziv, osnove i dikt u tipu ().

Primjer:

class MyClass:x = 'Hello World'y = 50t1 = type('NewClass', (MyClass,), dict(x='Hello World', y=50))print(type(t1))print(vars(t1))

Izlaz:

{'x': 'Hello World', 'y': 50, '__module__': '__main__', '__doc__': None}

Kada proslijedite sva tri argumenta type (), pomaže vam da inicijalizirate novu klasu s atributima osnovne klase.

Što je isinstance () u Pythonu?

Python isinstance dio je ugrađenih funkcija pythona. Python isinstance () uzima dva argumenta i vraća true ako je prvi argument instanca classinfo dane kao drugi argument.

Sintaksa jeinstance ()

isinstance(object, classtype)

Parametri

  • objekt: Objekt čiju instancu uspoređujete s classtype. Vratit će true ako se vrsta podudara s false.
  • vrsta klase: vrsta ili klasa ili skup vrsta i / ili klasa.

Povratna vrijednost:

Vratit će true ako je objekt instanca classtype i false ako nije.

Primjeri isinstance ()

U ovom ćemo odjeljku proučiti razne primjere za učenje isinstance ()

Primjer: isinstance () Provjera cijelog broja

Kod u nastavku uspoređuje cijelu vrijednost 51 s tipom int. Vratit će true ako se podudara tip 51 s int inače false.

age = isinstance(51,int)print("age is an integer:", age)

Izlaz:

age is an integer: True

Primjer: isinstance () Float provjera

U ovom ćemo primjeru usporediti vrijednost float-a s tipom float, tj. 3.14 vrijednost će se usporediti s tipom float.

pi = isinstance(3.14,float)print("pi is a float:", pi)

Izlaz:

pi is a float: True

Primjer: isinstance () Provjera niza

message = isinstance("Hello World",str)print("message is a string:", message)

Izlaz:

message is a string: True

Primjer: isinstance () Provjera kompleta

Kôd provjerava navlaku (1,2,3,4,5) s naborom tipa. Vratit će true ako je zadani unos tipa korice i false ako nije.

my_tuple = isinstance((1,2,3,4,5),tuple)print("my_tuple is a tuple:", my_tuple)

Izlaz:

my_tuple is a tuple: True

Primjer: isinstance () Provjera skupa

Kôd provjerava skup ({1,2,3,4,5}, sa skupom vrsta. Vratit će se true ako je zadani ulaz vrsta skupa i false ako nije.

my_set = isinstance({1,2,3,4,5},set)print("my_set is a set:", my_set)

Izlaz:

my_set is a set: True

Primjer: provjera popisa isinstance ()

Kod provjerava popis [1,2,3,4,5] s popisom vrsta. Vratit će true ako je zadani unos tipa type i false ako nije.

my_list = isinstance([1,2,3,4,5],list)print("my_list is a list:", my_list)

Izlaz:

my_list is a list: True

Primjer: isinstance () provjera diktata

Kôd provjerava dict ({"A": "a", "B": "b", "C": "c", "D": "d"}, s tipom dict. Vratit će se true ako dani unos je tipa dict i false ako nije.

my_dict = isinstance({"A":"a", "B":"b", "C":"c", "D":"d"},dict)print("my_dict is a dict:", my_dict)

Izlaz:

my_dict is a dict: True

Primjer: test isinstance () na predavanju

Kôd prikazuje provjeru tipa klase s isinstance (). Objekt klase uspoređuje se s nazivom klase unutar isinstance (). Vraća true ako objekt pripada klasi, a false u suprotnom.

class MyClass:_message = "Hello World"_class = MyClass()print("_class is a instance of MyClass() : ", isinstance(_class,MyClass))

Izlaz:

_class is a instance of MyClass() True

Razlika između tipa () i isinstance () u Pythonu

tip() isinstance ()
Python ima ugrađenu funkciju koja se naziva type () koja vam pomaže pronaći tip klase varijable koja je data kao ulaz. Python ima ugrađenu funkciju koja se naziva isinstance () koja uspoređuje vrijednost s danim tipom. Ako se zadana vrijednost i vrsta podudaraju, vratit će true, inače false.
Povratna vrijednost je objekt tipa Povratna vrijednost je Booleova vrijednost, tj. True ili false.
class A:my_listA = [1,2,3]class B(A):my_listB = [1,2,3]print(type(A()) == A)print(type(B()) == A)
Izlaz:
TrueFalse
U slučaju tipa provjera podrazreda vraća false.
class A:my_listA = [1,2,3]class B(A):my_listB = [1,2,3]print(isinstance(A(), A))print(isinstance(B(), A))
Izlaz:
TrueTrue
isinstance () daje istinitu vrijednost kada se provjerava s podrazredom.

Sažetak:

  • Python ima ugrađenu funkciju koja se naziva type () koja vam pomaže pronaći tip klase varijable koja je data kao ulaz. Na primjer, ako je ulaz niz, dobit ćete izlaz kao , za popis će to biti itd.
  • Za type () možete proslijediti jedan argument, a povratna vrijednost bit će vrsta klase datog argumenta, npr. Type (object).
  • Također je moguće proslijediti tri argumenta type (), tj. Type (ime, baze, dikt), u tom će vam slučaju vratiti novi objekt tipa.
  • Python ima ugrađenu funkciju koja se naziva instance () koja uspoređuje vrijednost s danim tipom. Ako se zadana vrijednost i vrsta podudaraju, vratit će true, inače false. Koristeći isinstance () možete testirati string, float, int, list, tuple, dict, set, class, itd.
  • Pomoću metode isinstance () možete testirati string, float, int, list, tuple, dict, set, class, itd.