Aula 1 de 0
Em Progresso

6. Nomeando parâmetros

Python suporta a chamada de funções com diversos parâmetros, porém vimos até então somente o caso em que fizemos a chamada da função passando os parâme­tros na mesma ordem em que foram definidos. Ao especificarmos o nome dos parâmetros, é possível passá-los em qualquer ordem. Observe o exemplo da função retângulo, definida como:

 

CODIGO

# Prograna 8.11 - Função retângulo com parânetros obrigatórios e opcionais
def retângulo(largura, altura, caractere="*"):
linha = caractere * largura
for i in range(altura):
print(linha)

 

 

 

É possível chamar a função retângulo como:

»> retângulo(3, 4)
***
»> retângulo(largura=3, altura=4)
***
***
»> retângulo(altura=4) largura=3)
★ **
***
***
★ ★★
>» retângulo(caractere="-", altura=4, largura=3)

 

CODIGO

 

 

 

Uma vez que usamos o nome de cada parâmetro para fazer a chamada, a ordem de passagem deixa de ser relevante. Também note que o parâmetro caractere permanece opcional, porém caso o especifiquemos, também é preciso fazer com nome. Ao especificarmos o nome de um parâmetro, precisamos especificar o nome de todos os outros parâmetros também. Por exemplo, as chamadas abaixo são inválidas:

retângulo(largura=3, 4)
retângulo(largura=3, a'ltura=4, "*")

 

CODIGO

 

 

Uma exceção a essa regra é se combinarmos parâmetros obrigatórios e opcionais. Por exemplo, é possível passar os parâmetros obrigatórios sem usar seus nomes, porém respeitando a ordem usada na declaração e parâmetros nomea­dos para escolher somente que parâmetros opcionais usar. Não se esqueça que, quando passar o primeiro parâmetro nomeado (usando seu nome), todos os parâmetros seguintes devem possuir seus nomes especificados também.