Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Posição do atributo padrão

A minha dúvida é para valores padrão que não estejam na última posição dos atributos: como o python vai ser capaz de entender a qual atributo estamos atribuindo um valor?

Exemplificando Supondo aqui uma situação onde dois atributos possuem um valor padrão 0 (saldo e limite)

class Conta:
    def __init__(self, numero, titular, saldo = 0, limite = 0):
        self.numero = numero
        self.titular = titular
        self.saldo = saldo
        self.limite = limite

Ao declarar os objetos abaixo, como eu faria para indicar que a conta2 tem saldo = 150 mas limite padrão, enquanto a conta3 tem saldo padrão e limite = 2500?

conta1 = Conta(111, "Nico", 50, 1000)
conta2 = Conta(222, "Solas", 150)
conta3 = Conta(333, "Amanda", 2500)

Ou seja, como explicitar para o python a qual atributo estou atribuindo valor e qual ele pode adotar o valor padrão?

1 resposta
solução!

Olá, Benjamim! Belezinha?

O Python entende a posição dos atributos na hora de atribuir valores aos mesmos. Então se você quiser atribuir um valor a um atributo que não seja o da posição, basta informar o nome do atributo na hora de criar o objeto.

No exemplo que você deu, para indicar que a conta2 tem saldo = 150 mas limite padrão, você pode criar o objeto da seguinte forma:

conta2 = Conta(222, "Solas", saldo=150)

E para indicar que a conta3 tem saldo padrão e limite = 2500, você pode criar o objeto assim:

conta3 = Conta(333, "Amanda", limite=2500)

Espero ter ajudado. Qualquer outra dúvida estou a disposição.

Abraços. Bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!