Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> python

type() e isinstance() em Python com exemplos

O que é type() em Python?


Python tem uma função interna chamada type() que ajuda a encontrar o tipo de classe da variável fornecida como entrada. Por exemplo, se a entrada for uma string, você obterá a saída como , para a lista, será , etc.

Usando o comando type(), você pode passar um único argumento, e o valor de retorno será o tipo de classe do argumento dado, exemplo:type(object).

Também é possível passar três argumentos para type(), ou seja, type(name, bases, dict), nesse caso, ele retornará um novo objeto de tipo.

Neste tutorial, você aprenderá:
  • O que é type() em Python?
  • Sintaxe para type():
  • Exemplo de tipo()
  • Exemplo:usando type() para objeto de classe.
  • Exemplo:usando o nome, bases e dict em type()
  • O que é isinstance() em Python?
  • Sintaxe isinstance():
  • Exemplos de isinstance()
  • Diferença entre type() e isinstance() em Python

Sintaxe para type():


type() pode ser usado de duas maneiras, conforme mostrado abaixo:
 type(object)
type(namr, bases, dict)


Parâmetros :tipo(objeto)
  • objeto:Este é um parâmetro obrigatório. Se este for apenas um parâmetro passado para type(), ele retornará o tipo do parâmetro.

Parâmetros :type(nome, bases, dict)
  • nome:nome da turma.
  • bases:(opcional). Este é um parâmetro opcional e é a classe base
  • dict:(opcional). Este é um parâmetro opcional e é um namespace que possui a definição da classe.

Valor de retorno:


Se o objeto for o único parâmetro passado para type(), ele retornará o tipo do objeto.

Se o parâmetro passado para type for um tipo (object, bases, dict), nesse caso, retornará um novo tipo de objeto.

Exemplo de tipo()


Neste exemplo, temos um valor de string, número, valor flutuante, um número complexo, lista, tupla, dict e set. Usaremos as variáveis ​​com tipo para ver a saída de cada uma delas.
str_list = "Welcome to Guru99"
age = 50
pi = 3.14
c_num = 3j+10
my_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))

Saída:
The type is :<class 'str'>
The type is :<class 'int'>
The type is :<class 'float'>
The type is :<class 'complex'>
The type is :<class 'list'>
The type is :<class 'tuple'>
The type is :<class 'dict'>
The type is :<class 'set'>

Exemplo:usando type() para objeto de classe.


Quando você verifica o objeto criado a partir de uma classe usando type(), ele retorna o tipo de classe junto com o nome da classe. Neste exemplo, vamos criar uma classe e verificar o tipo de objeto criado a partir do teste de classe.
class test:
    s = 'testing'

t = test()
print(type(t))

Saída:
<class '__main__.test'>

Exemplo:usando o nome, bases e dict em type()


O tipo também pode ser chamado usando a sintaxe:type(name, bases, dict).

Os três parâmetros passados ​​para type() ou seja, name, bases e dict são os componentes que compõem uma definição de classe. O nome representa o nome da classe, as bases é a classe base e dict é o dicionário de atributos da classe base.

Neste exemplo, vamos fazer uso de todos os três parâmetros, ou seja, name, bases e dict em type().

Exemplo:
class MyClass:
  x = 'Hello World'
  y = 50

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

Resultado:
<class 'type'>
{'x': 'Hello World', 'y': 50, '__module__': '__main__', '__doc__': None}

Quando você passa todos os três argumentos para type() , isso ajuda você a inicializar uma nova classe com atributos de classe base.

O que é isinstance() em Python?


A isinstance do Python faz parte das funções internas do python. Python isinstance() recebe dois argumentos e retorna true se o primeiro argumento for uma instância da classinfo fornecida como segundo argumento.

Sintaxe isinstance()

isinstance(object, classtype)

Parâmetros

  • object:Um objeto cuja instância você está comparando com classtype. Ele retornará true se o tipo corresponder a false.
  • tipo de classe:um tipo ou uma classe ou uma tupla de tipos e/ou classes.

Valor de retorno:


Ele retornará true se o objeto for uma instância de classtype e false se não for.

Exemplos de isinstance()


Nesta seção, estudaremos vários exemplos para aprender isinstance()

Exemplo:isinstance() Verificação de inteiro


O código abaixo compara o valor inteiro 51 com o tipo int. Ele retornará true no tipo de 51 correspondências com int caso contrário, false.
age = isinstance(51,int)
print("age is an integer:", age)

Resultado:
age is an integer: True

Exemplo:isinstance() Verificação de flutuação


Neste exemplo, vamos comparar o valor float com o tipo float, ou seja, o valor 3.14 será comparado com o tipo float.
pi = isinstance(3.14,float)
print("pi is a float:", pi)

Resultado:
pi is a float: True

Exemplo:isinstance() Verificação de string

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

Resultado:
message is a string: True

Exemplo:isinstance() Verificação de tupla


O código verifica se há uma tupla (1,2,3,4,5) com o tipo tupla. Ele retornará true se a entrada fornecida for do tipo tupla e false se não for.
my_tuple = isinstance((1,2,3,4,5),tuple)
print("my_tuple is a tuple:", my_tuple)

Resultado:
my_tuple is a tuple: True

Exemplo:isinstance() Definir verificação


O código verifica se há um conjunto ({1,2,3,4,5}, com o tipo definido. Ele retornará true se a entrada fornecida for do tipo definido e false se não for.
my_set = isinstance({1,2,3,4,5},set)
print("my_set is a set:", my_set)

Resultado:
my_set is a set: True

Exemplo:verificação de lista isinstance()


O código verifica se há uma lista [1,2,3,4,5], com o tipo list. Ele retornará true se a entrada fornecida for do tipo list e false se não for.
my_list = isinstance([1,2,3,4,5],list)
print("my_list is a list:", my_list)

Resultado:
my_list is a list: True

Exemplo:verificação de dict isinstance()


O código verifica se há um dict({“A”:”a”, “B”:”b”, “C”:”c”, “D”:”d”}, com o tipo dict. Ele retornará true se a entrada fornecida é do tipo dict e false se não.
my_dict = isinstance({"A":"a", "B":"b", "C":"c", "D":"d"},dict)
print("my_dict is a dict:", my_dict)

Resultado:
my_dict is a dict: True

Exemplo:teste isinstance() em uma classe


O código mostra a verificação de tipo da classe com isinstance() . O objeto da classe é comparado com o nome da classe dentro de isinstance(). Retorna true se o objeto pertence à classe e false caso contrário.
class MyClass:
    _message = "Hello World"

_class = MyClass()

print("_class is a instance of MyClass() : ", isinstance(_class,MyClass))

Resultado:
_class is a instance of MyClass() True

Diferença entre type() e isinstance() em Python

tipo() isinstance()
O Python tem uma função interna chamada type() que ajuda a encontrar o tipo de classe da variável fornecida como entrada. Python tem uma função interna chamada isinstance() que compara o valor com o tipo fornecido. Se o valor e o tipo fornecidos corresponderem, ele retornará true, caso contrário, false.
O valor de retorno é um objeto de tipo O valor de retorno é um booleano, ou seja, verdadeiro ou falso.
class A:
my_listA = [1,2,3]

class B(A):
my_listB = [1,2,3]

print(type(A()) == A)
print(type(B()) == A)

Resultado:
True
False

No caso de tipo, a verificação da subclasse retorna false.
class A:
my_listA = [1,2,3]

class B(A):
my_listB = [1,2,3]

print(isinstance(A(), A))
print(isinstance(B(), A))

Resultado:
True
True

isinstance() fornece um valor verdadeiro quando verificado com uma subclasse.

Resumo:

  • O Python tem uma função interna chamada type() que ajuda a encontrar o tipo de classe da variável fornecida como entrada. Por exemplo, se a entrada for uma string, você obterá a saída como , para a lista, será , etc.
  • Para type(), você pode passar um único argumento, e o valor de retorno será o tipo de classe do argumento fornecido, por exemplo, type(object).
  • Também é possível passar três argumentos para type(), ou seja, type(name, bases, dict), nesse caso, ele retornará um novo objeto de tipo.
  • O Python tem uma função interna chamada instance() que compara o valor com o tipo fornecido. Se o valor e o tipo forem correspondentes, ele retornará true, caso contrário, false. Usando isinstance(), você pode testar string, float, int, list, tuple, dict, set, class, etc.
  • Usando o método isinstance(), você pode testar string, float, int, list, tuple, dict, set, class, etc.

python

  1. Expressões, instruções e blocos em C# (com exemplos)
  2. Conversão de tipo Python e conversão de tipo
  3. Números Python, Conversão de Tipos e Matemática
  4. Construindo robôs com Raspberry Pi e Python
  5. Python String count() com EXEMPLOS
  6. Python String format() Explique com EXEMPLOS
  7. Método Python String find() com exemplos
  8. Funções do Python Lambda com EXEMPLOS
  9. Função Python round() com EXEMPLOS
  10. Função Python map() com EXEMPLOS