Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Funções Úteis | Herança
Programação Orientada a Objetos em Python Avançado

book
Funções Úteis

isinstance()

A função isinstance() é uma função embutida do Python que verifica se um objeto é uma instância de uma determinada classe e retorna o valor booliano (True ou False). Esta função recebe 2 argumentos: instância e classe:

print(isinstance(662, int))
print(isinstance(25.3, int))
12
print(isinstance(662, int)) print(isinstance(25.3, int))
copy

Você pode utilizar esta função para verificar suas instâncias:

class User:
pass

user = User()

print(isinstance(user, User))
123456
class User: pass user = User() print(isinstance(user, User))
copy

issubclass()

A função issubclass() (é subclasse) é uma função embutida do Python que verifica se uma classe é Filha de outra classe:

class First:
pass

class Second(First):
pass

class Third(Second):
pass

print(issubclass(Second, First))
print(issubclass(Third, First))
1234567891011
class First: pass class Second(First): pass class Third(Second): pass print(issubclass(Second, First)) print(issubclass(Third, First))
copy

A função issubclass() funciona apenas com classes. Se você desejar verificar a instância, utilize a função type() dentro de issubclass():

class A:
pass

class B(A):
pass

instance = B()

print(issubclass(type(instance), A))
123456789
class A: pass class B(A): pass instance = B() print(issubclass(type(instance), A))
copy
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 2. Capítulo 6
some-alt