Type () a isinstance () v Pythone s príkladmi

Obsah:

Anonim

Čo je to type () v Pythone?

Python má zabudovanú funkciu nazvanú type (), ktorá vám pomôže nájsť typ triedy premennej uvedený ako vstup. Napríklad ak je vstupom reťazec, dostanete výstup ako , pre zoznam to bude atď.

Pomocou príkazu type () môžete vložiť jeden argument a návratová hodnota bude typ triedy daného argumentu, napríklad: type (objekt).

Je tiež možné odovzdať tri argumenty typu (), tj. Typu (meno, základy, diktát), v takom prípade vám vráti nový objekt typu.

V tomto návode sa dozviete:

  • Čo je to type () v Pythone?
  • Syntax pre typ ():
  • Príklad typu ()
  • Príklad: Použitie type () pre objekt triedy.
  • Príklad: Používanie názvu, základov a diktátu v type ()
  • Čo je to isinstance () v Pythone?
  • Syntax isinstance ():
  • Príklady inštancie ()
  • Rozdiel medzi type () a isinstance () v Pythone

Syntax pre typ ():

type () je možné použiť dvoma spôsobmi, ako je uvedené nižšie:

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

Parametre : typ (objekt)

  • objekt: Toto je povinný parameter. Ak je to iba parameter odovzdaný typu (), vráti vám typ parametra.

Parametre : typ (meno, základy, diktát)

  • name: názov triedy.
  • základy: (voliteľné). Toto je voliteľný parameter a je to základná trieda
  • dikt: (voliteľné). Toto je voliteľný parameter a je to menný priestor, ktorý má definíciu triedy.

Návratová hodnota:

Ak je objekt jediným parametrom odovzdaným typu (), vráti vám typ objektu.

Ak sú parametre odovzdané typu typ (objekt, základy, diktát), v takom prípade vráti nový typ objektu.

Príklad typu ()

V tomto príklade máme reťazcovú hodnotu, číslo, floatovanú hodnotu, komplexné číslo, zoznam, n-ticu, diktát a množinu. Použijeme premenné s typom, aby sme videli výstup pre každú z nich.

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))

Výkon:

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

Príklad: Použitie type () pre objekt triedy.

Keď skontrolujete objekt vytvorený z triedy pomocou metódy (), vráti typ triedy spolu s názvom triedy. V tomto príklade vytvoríme triedu a skontrolujeme typ objektu vytvorený z testu triedy.

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

Výkon:

Príklad: Používanie názvu, základov a diktátu v type ()

Typ je možné zavolať aj pomocou syntaxe: typ (meno, základy, diktát).

Tri parametre odovzdané typu (), tj. Meno, základy a diktát sú komponenty, ktoré tvoria definíciu triedy. Názov predstavuje názov triedy, základy je základná trieda a dict je slovník atribútov základnej triedy.

V tomto príklade použijeme všetky tri parametre, tj meno, základy a dict v type ().

Príklad:

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

Výkon:

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

Keď zadáte všetky tri argumenty typu (), pomôže vám to inicializovať novú triedu s atribútmi základnej triedy.

Čo je to isinstance () v Pythone?

Inštancia Pythonu je súčasťou zabudovaných funkcií pythonu. Python isinstance () prijíma dva argumenty a vráti hodnotu true, ak je prvý argument inštanciou classinfo uvedenou ako druhý argument.

Syntax isinstance ()

isinstance(object, classtype)

Parametre

  • objekt: Objekt, ktorého inštanciu porovnávate s typom triedy. Vráti hodnotu true, ak sa typ zhoduje s inak hodnotou false.
  • typ triedy: Typ alebo trieda alebo n-tica typov a / alebo tried.

Návratová hodnota:

Vráti hodnotu true, ak je objekt inštanciou triedy a hodnotu false, ak nie.

Príklady inštancie ()

V tejto časti budeme študovať rôzne príklady, aby sme sa naučili inštanciu ()

Príklad: isinstance () Kontrola celých čísel

Nasledujúci kód porovnáva celočíselnú hodnotu 51 s typom int. Vráti hodnotu true, ak je to typ 51 zápasov s hodnotou int inak false.

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

Výkon:

age is an integer: True

Príklad: isinstance () Float check

V tomto príklade budeme porovnávať float hodnotu s typom float, tj 3,14 hodnota bude porovnaná s typom float.

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

Výkon:

pi is a float: True

Príklad: isinstance () Kontrola reťazca

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

Výkon:

message is a string: True

Príklad: isinstance () Kontrola n-tíc

Kód skontroluje n-ticu (1,2,3,4,5) s typom n-tice. Vráti hodnotu true, ak je daný vstup typu n-tice, a hodnotu false, ak nie.

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

Výkon:

my_tuple is a tuple: True

Príklad: isinstance () Nastaviť kontrolu

Kód kontroluje množinu ({1,2,3,4,5} s nastaveným typom. Vráti hodnotu true, ak je zadaný vstup typu set, a hodnotu false, ak nie.

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

Výkon:

my_set is a set: True

Príklad: kontrola zoznamu isinstance ()

Kód vyhľadá zoznam [1,2,3,4,5] so zoznamom typov. Vráti hodnotu true, ak je zadaný vstup typu list, a hodnotu false, ak nie.

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

Výkon:

my_list is a list: True

Príklad: kontrola diktátu isinstance ()

Kód kontroluje diktát ({"A": "a", "B": "b", "C": "c", "D": "d"} s typom dict. Vráti hodnotu true, ak zadaný vstup je typu dict a false, ak nie.

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

Výkon:

my_dict is a dict: True

Príklad: test isinstance () na triede

Kód zobrazuje typovú kontrolu triedy s isinstance (). Objekt triedy sa porovnáva s názvom triedy vo vnútri isinstance (). Vráti hodnotu true, ak objekt patrí do triedy, a inak hodnotu false.

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

Výkon:

_class is a instance of MyClass() True

Rozdiel medzi type () a isinstance () v Pythone

typ () isinstance ()
Python má zabudovanú funkciu nazvanú type (), ktorá vám pomôže nájsť typ triedy premennej uvedený ako vstup. Python má zabudovanú funkciu s názvom isinstance (), ktorá porovnáva hodnotu s daným typom. Ak sa zadaná hodnota a typ zhodujú, vráti hodnotu true, inak hodnotu false.
Návratová hodnota je typový objekt Návratová hodnota je boolovská, tj. True alebo false.
class A:my_listA = [1,2,3]class B(A):my_listB = [1,2,3]print(type(A()) == A)print(type(B()) == A)
Výkon:
TrueFalse
V prípade typu vráti kontrola podtriedy hodnotu false.
class A:my_listA = [1,2,3]class B(A):my_listB = [1,2,3]print(isinstance(A(), A))print(isinstance(B(), A))
Výkon:
TrueTrue
isinstance () dáva pravdivú hodnotu, keď je skontrolované podtriedou.

Zhrnutie:

  • Python má zabudovanú funkciu nazvanú type (), ktorá vám pomôže nájsť typ triedy premennej uvedený ako vstup. Napríklad ak je vstupom reťazec, dostanete výstup ako , pre zoznam to bude atď.
  • Pre typ () môžete vložiť jeden argument a návratová hodnota bude typ triedy daného argumentu, napr. Typ (objekt).
  • Je tiež možné odovzdať tri argumenty typu (), tj. Typu (meno, základy, diktát), v takom prípade vám vráti nový objekt typu.
  • Python má zabudovanú funkciu nazvanú instance (), ktorá porovnáva hodnotu s daným typom. Ak sa zadaná hodnota a typ zhodujú, vráti hodnotu true, inak hodnotu false. Pomocou isinstance () môžete testovať reťazec, float, int, zoznam, n-ticu, diktát, množinu, triedu atď.
  • Pomocou metódy isinstance () môžete testovať reťazec, float, int, zoznam, n-ticu, diktát, množinu, triedu atď.