Type () e isinstance () in Python con esempi

Sommario:

Anonim

Cos'è type () in Python?

Python ha una funzione incorporata chiamata type () che ti aiuta a trovare il tipo di classe della variabile data come input. Ad esempio, se l'input è una stringa, otterrai l'output come , per l'elenco, sarà , ecc.

Usando il comando type (), puoi passare un singolo argomento e il valore restituito sarà il tipo di classe dell'argomento dato, esempio: type (object).

È anche possibile passare tre argomenti a type (), cioè type (name, basi, dict), in tal caso, ti restituirà un nuovo tipo di oggetto.

In questo tutorial imparerai:

  • Cos'è type () in Python?
  • Sintassi per tipo ():
  • Esempio di tipo ()
  • Esempio: utilizzo di type () per oggetto classe.
  • Esempio: utilizzo di name, basi e dict in type ()
  • Cos'è isinstance () in Python?
  • La sintassi è istanza ():
  • Esempi di isinstance ()
  • Differenza tra type () e isinstance () in Python

Sintassi per tipo ():

type () può essere utilizzato in due modi come mostrato di seguito:

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

Parametri : tipo (oggetto)

  • oggetto: questo è un parametro obbligatorio. Se questo è solo il parametro passato a type (), restituirà il tipo del parametro.

Parametri : tipo (nome, basi, dict)

  • nome: nome della classe.
  • basi: (opzionale). Questo è un parametro facoltativo ed è la classe base
  • dict: (opzionale). Questo è un parametro facoltativo ed è uno spazio dei nomi che ha la definizione della classe.

Valore di ritorno:

Se l'oggetto è l'unico parametro passato a type (), restituirà il tipo dell'oggetto.

Se il parametro passato a type è un tipo (oggetto, basi, dict), in tal caso, restituirà un nuovo tipo di oggetto.

Esempio di tipo ()

In questo esempio abbiamo un valore stringa, un numero, un valore float, un numero complesso, una lista, una tupla, un dict e un set. Useremo le variabili con tipo per vedere l'output per ciascuna di esse.

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

Produzione:

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

Esempio: utilizzo di type () per oggetto classe.

Quando si controlla l'oggetto creato da una classe utilizzando type (), restituisce il tipo di classe insieme al nome della classe. In questo esempio, creeremo una classe e controlleremo il tipo di oggetto creato dal test della classe.

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

Produzione:

Esempio: utilizzo di name, basi e dict in type ()

Il tipo può essere chiamato anche usando la sintassi: tipo (nome, basi, dict).

I tre parametri passati a type () cioè, nome, basi e dict sono i componenti che compongono una definizione di classe. Il nome rappresenta il nome della classe, le basi è la classe base e dict è il dizionario degli attributi della classe base.

In questo esempio, utilizzeremo tutti e tre i parametri, ovvero nome, basi e comando in type ().

Esempio:

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

Produzione:

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

Quando passi tutti e tre gli argomenti a type (), ti aiuta a inizializzare la nuova classe con gli attributi della classe base.

Cos'è isinstance () in Python?

Python isinstance fa parte delle funzioni integrate di Python. Python isinstance () accetta due argomenti e restituisce true se il primo argomento è un'istanza di classinfo data come secondo argomento.

La sintassi è istanza ()

isinstance(object, classtype)

Parametri

  • oggetto: un oggetto di cui stai confrontando l'istanza con classtype. Restituirà true se il tipo corrisponde a false.
  • tipo di classe: un tipo o una classe o una tupla di tipi e / o classi.

Valore di ritorno:

Restituirà true se l'oggetto è un'istanza di classtype e false in caso contrario.

Esempi di isinstance ()

In questa sezione studieremo vari esempi per imparare isinstance ()

Esempio: isinstance () Integer check

Il codice seguente confronta il valore intero 51 con il tipo int. Restituirà true se il tipo di 51 corrispondenze con int altrimenti false.

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

Produzione:

age is an integer: True

Esempio: isinstance () Float check

In questo esempio confronteremo il valore float con il tipo float, ovvero il valore 3.14 verrà confrontato con il tipo float.

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

Produzione:

pi is a float: True

Esempio: isinstance () String check

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

Produzione:

message is a string: True

Esempio: isinstance () Tuple check

Il codice verifica la presenza di una tupla (1,2,3,4,5) con il tipo tupla. Restituirà true se l'input fornito è di tipo tuple e false in caso contrario.

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

Produzione:

my_tuple is a tuple: True

Esempio: isinstance () Imposta il controllo

Il codice verifica la presenza di un set ({1,2,3,4,5}, con tipo set. Restituirà true se l'input fornito è di tipo set e false in caso contrario.

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

Produzione:

my_set is a set: True

Esempio: isinstance () list check

Il codice verifica la presenza di una lista [1,2,3,4,5], con la lista dei tipi. Restituirà true se l'input fornito è di tipo list e false in caso contrario.

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

Produzione:

my_list is a list: True

Esempio: isinstance () dict check

Il codice verifica la presenza di un dict ({"A": "a", "B": "b", "C": "c", "D": "d"}, con tipo dict. Restituirà vero se l'input fornito è di tipo dict e false in caso contrario.

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

Produzione:

my_dict is a dict: True

Esempio: isinstance () test su una classe

Il codice mostra il controllo del tipo di classe con isinstance (). L'oggetto della classe viene confrontato con il nome della classe all'interno di isinstance (). Restituisce true se l'oggetto appartiene alla classe e false in caso contrario.

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

Produzione:

_class is a instance of MyClass() True

Differenza tra type () e isinstance () in Python

genere() isinstance ()
Python ha una funzione incorporata chiamata type () che ti aiuta a trovare il tipo di classe della variabile data come input. Python ha una funzione incorporata chiamata isinstance () che confronta il valore con il tipo fornito. Se il valore e il tipo forniti corrispondono, restituirà true altrimenti false.
Il valore restituito è un oggetto di tipo Il valore restituito è un booleano, ovvero vero o falso.
class A:my_listA = [1,2,3]class B(A):my_listB = [1,2,3]print(type(A()) == A)print(type(B()) == A)
Produzione:
TrueFalse
In caso di tipo, il controllo della sottoclasse restituisce false.
class A:my_listA = [1,2,3]class B(A):my_listB = [1,2,3]print(isinstance(A(), A))print(isinstance(B(), A))
Produzione:
TrueTrue
isinstance () fornisce un valore true quando controllato con una sottoclasse.

Sommario:

  • Python ha una funzione incorporata chiamata type () che ti aiuta a trovare il tipo di classe della variabile data come input. Ad esempio, se l'input è una stringa, otterrai l'output come , per l'elenco, sarà , ecc.
  • Per type (), è possibile passare un singolo argomento e il valore restituito sarà il tipo di classe dell'argomento fornito, ad esempio, tipo (oggetto).
  • È anche possibile passare tre argomenti a type (), cioè type (name, basi, dict), in tal caso, ti restituirà un nuovo tipo di oggetto.
  • Python ha una funzione incorporata chiamata instance () che confronta il valore con il tipo dato. Se il valore e il tipo forniti corrispondono, restituirà true altrimenti false. Usando isinstance (), puoi testare string, float, int, list, tuple, dict, set, class, ecc.
  • Usando il metodo isinstance (), puoi testare string, float, int, list, tuple, dict, set, class, ecc.