1
resposta

Parâmetros opcionais e Parâmetros nomeados

Professor e amigos que estudam Python:

Eu não consegui entender sobre parâmetros opcionais e nomeados, as suas diferenças. Alguém pode me dá uma ajuda para entender melhor?

Obrigada

1 resposta

Olá bom também estou estudando Python e pelo o que entendi, parâmetros opcionais são parâmetros que podem ou não ser passados no momento que chamamos a função. Segue um exemplo que encontrei na internet pra exemplificar.

def contar(valor = 11, caractere = "+"
    for i in range(1, valor)
        print(caractere)
contar()
print("Passando um caractere diferente:")
contar(caractere = "&")
print("Passando um valor diferente:")
contar(valor = 5)

Nesse caso nós definimos uma função para fazer uma contagem dos caracteres, quando chamamos a função pela primeira vez ele retorna 10x "+", no segundo momento nós fazemos a mudança desse caractere para "&" onde resulta em 10x "&" e por fim na última vez mudamos apenas o valor, sendo assim o console irá exibir 4x "+".

Utilizando o mesmo exemplo acima, parâmetros nomeados são a passagem de valores fazendo associação com o nome do parâmetro e o valor que está sendo enviado. Segue exemplo:

def contar(caractere, valor)
    for i  in range(1, valor)
        print(caractere)
print("Passando apenas os argumentos obrigatório:")
contar("#", 6)
print("Tentando executar a função sem passar os parâmetros obrigatório:")
contar()

Nesse exemplo, caractere e valor não são especificados então quando chamamos a função precisamos nomear os argumentos, na primeira vez que chamamos o código ele retorna 6x "#" e na segunda tentativa é retornado erro de TypeError: contar() missing 2 required positional arguments: 'caractere' and 'valor'. Isso ocorre porque os argumentos não foram nomeados.

Espero ter ajudado. Abraços e continue programando :D