Sobre os parâmetros adicionados no def init(self, nome, .......) Quantos parâmetros podemos adicionar nesse local e se é possível adicionar uma lista e/ou uma matriz?
Sobre os parâmetros adicionados no def init(self, nome, .......) Quantos parâmetros podemos adicionar nesse local e se é possível adicionar uma lista e/ou uma matriz?
Oi Nathan, boa noite! Você pode adicionar quantos parâmetros quiser. Se você não sabe ao certo quanto parâmetros vai receber em cada chamada do __init__, você pode utilizar o asterisco como prefixo do parâmetro que o Python vai entender que você vai passar alguns parâmetros, mas não sabe ao certo quantos. Por convenção, chamamos este parâmetro de args.
Veja um teste em uma função comum:
def teste(param1, *args):
print('primeiro argumento: ', param1)
for arg in args:
print('outro argumento: ', arg)
Ao chamar a função:
>>> teste('python', 'é', 'muito', 'legal')
gera a saída:
primeiro argumento: python
outro argumento: é
outro argumento: muito
outro argumento: legal
Você também pode passar uma lista ou tupla:
>>> lista = [1, 2, 3]
>>> teste(*lista)
1
2
3
Depois procure pelo **kwarg, com dois asteriscos (**) podemos passar argumentos nomeados como dicionários.
Espero ter ajudado e bons estudos!