Verifique se a variável é Python inteiro
-
Use o método
isinstance()para verificar se um objeto é um tipointem Python -
Use o método
int()para verificar se um objeto é um tipointem Python -
Use o método
float.is_integer()para verificar se um objeto é um tipointem Python
Em Python, temos diferentes tipos de dados quando lidamos com números. Estes são os tipos de dados int, float e complex.
O tipo de dados int é usado para representar inteiros. Neste tutorial, discutiremos como verificar se uma variável é int ou não.
Em Python, geralmente verificamos a função type() para retornar o tipo do objeto. Por exemplo,
x = 10
print(type(x))
print(type(x) == int)
Resultado:
<class 'int'>
True
Este método pode funcionar normalmente, mas bloqueia toda a flexibilidade do polimorfismo. Por exemplo, se criarmos uma subclasse de um objeto como int e esperarmos que ele seja registrado como int, isso pode falhar com a função type().
O código a seguir demonstra isso.
class def_int(int):
pass
x = def_int(0)
print(type(x))
print(type(x) == int)
Resultado:
<class '__main__.def_int'>
False
Use o método isinstance() para verificar se um objeto é um tipo int em Python
Portanto, é encorajado a usar a função isinstance() em vez do tradicional type(). A função isinstance() é usada para verificar se um objeto pertence à subclasse especificada. O seguinte trecho de código irá explicar como podemos usá-lo para verificar se há objetos int.
y = 10
class def_int(int):
pass
x = def_int(0)
print(isinstance(y, int))
print(isinstance(x, int))
Resultado:
True
True
Recomenda-se usar a classe base abstrata numbers.Integral, em vez da classe int concreta. Desta forma, podemos verificar se há int, long e até mesmo os métodos definidos pelo usuário que podem atuar como um inteiro.
Use o método int() para verificar se um objeto é um tipo int em Python
Podemos criar uma lógica simples também para conseguir isso usando a função int. Para um objeto ser int, ele deve ser igual ao valor retornado pela função int() quando este objeto é passado para ele. O código a seguir demonstra isso.
x = 10.05
if int(x) == x:
print("True")
else:
print("False")
Resultado:
False
Este método retornará um erro de tipo quando trabalhado com objetos complexos.
Use o método float.is_integer() para verificar se um objeto é um tipo int em Python
Este método funciona apenas para objetos float. Ele verifica se o valor em um objeto float é um inteiro ou não. Por exemplo,
x = 10.0
print(float.is_integer(x))
Resultado:
True
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn