Olá, eu gostaria que alguém me desse a definição do __init__
? Uma explicação sobre como ele funciona...
Olá, eu gostaria que alguém me desse a definição do __init__
? Uma explicação sobre como ele funciona...
Bom dia, Pedro!
O método init é, em linhas gerais, um método construtor da classe. Desta forma, ele permite que, ao criarmos uma instância/objeto da classe, possamos definir valores para os atributos daquela classe.
Embora não seja obrigatório implementar este método, é interessante adicioná-lo aos métodos da classe para definir "o mínimo" necessário para a criação de um objeto daquela classe.
Por exemplo, vamos imaginar uma classe Carro. Pensando em um carro do mundo real, percebemos que todos eles têm:
Assim, nossa classe Carro, com o método init, ficaria desta forma (ocultando os métodos de acesso e atribuição de valores aos atributos fora do init):
class Carro:
def __init__(self, modelo, marca, ano, quantidade_de_portas):
self.__modelo = modelo
self.__marca = marca
self.__ano = ano
self.__quantidade_de_portas = quantidade_de_portas
Mediante esta classe, segue abaixo como criamos dois objetos diferentes desta classe:
carro_01 = Carro("Fusca", "Volkswagen", 1985, 2)
carro_02 = Carro("Renegade", "Jeep", 2018, 4)
Espero ter ajudado!! Bons estudos!