Neste artigo veremos por que nas classes do Python devemos utilizar o object e também qual a importância desta ação para os nossos softwares.
Fala programador(a), tudo bem? Bora aprender mais sobre Python!
Essa questão de passar o object como um argumento foi definida na versão do Python número 3
Chamadas estas classes de new-style, declarando o argumento object, e as da versão 2 são chamadas de old-style, sem argumento
Na prática não é obrigatório passar o argumento, a classe funciona de ambas as formas (new e old)
A questão é que o código fica mais explícito, o que é pregado na documentação do Python como código Pythonico
Informando que a classe herda os métodos e propriedades de object, de uma foram que até quem é novo na linguagem entende esta passagem de características e não parece que ‘surgiu do nada’
Veja a comparação:
class Teste: pass class Teste(object): pass
O primeiro exemplo é uma classe criada no old-style e o segundo uma classe com o new-style
Além disso a nova versão das classes no Python 3 não trás somente estas mudanças
Outros pontos positivos são:
- A possibilidade de utilizar super, assim acessando os membros de superclasses diretamente;
- O uso de __slots__, para classes com campos bem definidos e fixos;
- As classes não podem ser lançados, a não ser que derivem de Exception;
- A MRO (Method Resolution Order) mudou;
Você pode ler mais sobre elas aqui.
Conclusão
Neste artigo vimos por que nas classes do Python devemos utilizar o object
Na verdade não devemos, é algo totalmente opcional e vai funcionar igual das duas formas
A grande diferença é que declarando, o argumento fica explícito, o que é considerado uma boa prática de Python
Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube