O que é sobrecarga de construtor em Python? Com Exemplos

Publicados: 2023-01-29

Python é uma linguagem de programação amigável que pode ser facilmente dominada por iniciantes. Essa linguagem de programação oferece uma ampla gama de suporte da comunidade que ajuda os programadores a explorar várias maneiras de implementar o código. As bibliotecas padrão em Python e os módulos fornecidos pelo fórum da comunidade permitiram infinitas possibilidades, incluindo desenvolvimento na Web e na Internet, GUIs de desktop, acesso a banco de dados, educação, aplicações científicas e numéricas, programação de rede, desenvolvimento de software e programas para desenvolver jogos. Esta linguagem de código aberto é desenvolvida sob licença aprovada pela OSI. Portanto, pode ser usado e distribuído gratuitamente. A Python Software Foundation administra a licença do Python.

Índice

Construtores em Python:

A principal função de um construtor Python é instanciar os objetos. No momento da criação do objeto, os membros de dados da classe recebem valores ou são inicializados com a ajuda de construtores. A função _init_ é um construtor em Python. Geralmente é chamado quando um novo objeto é criado.

A sintaxe para declaração de um construtor é

Def _init_(self):

# corpo do construtor

Existem dois tipos de construtores em Python. Eles são:

  • Construtor padrão
  • Construtor parametrizado

Construtor padrão:

É um construtor simples e não aceita nenhum parâmetro de entrada. A definição de construtores padrão possui apenas um argumento que se refere à instância que está sendo construída.

Construtor parametrizado:

Conforme indicado pelo nome, esses construtores possuem parâmetros. O primeiro argumento deste tipo de construtor refere-se à instância que é construída e é conhecido como 'self'. Todos os outros argumentos necessários são especificados pelo programador como entradas.

Confira os cursos de ciência de dados da upGrad

Sobrecarga de construtor em Python:

A sobrecarga de construção refere-se a um cenário de incorporação de um número maior de construtores com uma lista separada de parâmetros, de modo que cada construtor seja usado para realizar diferentes tarefas no programa. Por exemplo, existem quatro tipos de construtores na classe Vector.

O Python não oferece suporte explicitamente a vários construtores. No entanto, o uso de vários construtores em Python pode ser realizado de várias maneiras. Se um programador escrever vários métodos _init_ para a mesma classe, a função _init_ escrita mais recentemente substituirá todos os outros construtores.

Por que vários construtores são necessários em Python?

Quando o usuário tem necessidade de realizar diferentes ações para instanciar uma classe, surge a exigência de múltiplos construtores. Isso é útil quando diferentes ações devem ser executadas pela classe em diferentes parâmetros. Os construtores de classe em Python são estruturados para exibir polimorfismo de três maneiras diferentes, conforme listado abaixo:

  1. Sobrecarga de construtor com base em argumentos
  2. Invocando métodos _init_
  3. Uso do decorador @classmethod

Explore nossos cursos populares de ciência de dados

Programa Executivo de Pós-Graduação em Ciência de Dados do IIITB Programa de Certificação Profissional em Ciência de Dados para Tomada de Decisões de Negócios Mestre em Ciência de Dados pela University of Arizona
Programa de Certificação Avançada em Ciência de Dados do IIITB Programa de certificação profissional em ciência de dados e análise de negócios da Universidade de Maryland Cursos de ciência de dados

Leia nossos artigos populares sobre ciência de dados

Plano de carreira em ciência de dados: um guia de carreira abrangente Crescimento na carreira de ciência de dados: o futuro do trabalho está aqui Por que a ciência de dados é importante? 8 maneiras pelas quais a ciência de dados agrega valor aos negócios
Relevância da ciência de dados para gerentes A melhor folha de dicas de ciência de dados que todo cientista de dados deveria ter As 6 principais razões pelas quais você deve se tornar um cientista de dados
Um dia na vida do cientista de dados: o que eles fazem? Destruído o Mito: Data Science não precisa de Codificação Business Intelligence x Ciência de Dados: Quais são as diferenças?

Sobrecarga de construtor em Python baseada em argumentos:

Nesse método, os construtores são sobrecarregados executando a ação necessária depois que as condições para os argumentos passados ​​são verificadas. Vamos considerar um exemplo de passagem de um parâmetro para a classe Sample.

  • O quadrado do número é a resposta se o parâmetro de entrada for um int.
  • Se o comprimento do parâmetro for maior que 1, a soma dos argumentos é mostrada como resposta.

Chamando métodos com _init_:

Quando uma instância de uma classe é criada, a classe pode ter um único construtor _init_ que pode executar qualquer tarefa atribuída. Este construtor pode ser modificado para lidar com diferentes funções e realizar diferentes tarefas com base no parâmetro que é passado. Vamos considerar um exemplo onde os seguintes cálculos são executados.

  • Se forem passados ​​dois argumentos, a expressão é avaliada como x = a 2 – b 2
  • Se três argumentos forem passados, a expressão avaliada será y = a 2 + b 2 – c
  • Se o número de argumentos passados ​​exceder três, adicione os quadrados desses números e divida a soma pelo argumento com o valor mais alto.

Se você gostaria de aprender a fundo sobre substituição de método em Python, sugerimos que você faça o Mestrado em Ciência de Dados de 18 meses . upGrad oferece este curso do IIIT Bangalore e da Liverpool John Moore's University. O curso ensina habilidades como estatística, análise preditiva usando Python, aprendizado de máquina, visualização de dados, análise de big data e muito mais. Alunos com um forte conhecimento dos conceitos de Python estão bem posicionados para abordar assuntos como Deep Learning, Processamento de Linguagem Natural, Análise de Negócios e Engenharia de Dados.

Quer compartilhar este artigo?

Prepare-se para uma Carreira do Futuro

Candidate-se ao Mestrado em Ciência de Dados