Nesta aula continuaremos o estudo dos parâmetros e iremos aprofundar nosso entendimento com a definição e a capacidade de definirmos parâmetros default em nossas funções. |
PARÂMETROS DEFAULT
Parâmetro default é uma parâmetro que tem um valor associado na declaração da função, ou seja, o valor é atribuído ao parâmetro dentro do parêntesis. O parâmetros default funciona da mesma forma que a inicialização e declaração de variáveis, isto é, a mesma recebe um valor no momento da sua declaração.
Por exemplo, vamos implementar uma simples função e definir um único parâmetro default.
# a função está sendo definida e o valor 1000 está sendo associado
# ao parametro de nome param1
def minha_funcao(param1=1000):
print(param1)
Como pode ser visto no código acima, implementamos uma função de nome minha_funcao()
e definimos no cabeçalho da mesma [entre parêntesis] um parâmetro de nome param1
e associamos a este nome o valor inteiro 1000.
Podemos pensar em parâmetros default como se fossem variáveis que são inicializadas no momento da declaração. |
A biblioteca padrão do Python contém centenas de funções que possuem parâmetros com valores associados, uma delas é a função range() já estudada.
Em aulas anteriores, invocamos, algumas vezes, funções que continham parâmetros default, por exemplo, a função range()
, cuja notação pode ser vista no trecho de código a seguir.
def __init__(self, start=None, *args, **kwargs):
pass
A função range()
é, na verdade, uma classe, por isso que o nome da função é __init__()
, isto é, essa função é a função que é invocada quando uma nova instância está sendo criada.
O primeiro parâmetro é de nome self
, neste momento, temos que saber somente que este parâmetro é comum em todas as funções implementadas dentro de quaisquer classe. Então, não vamos estuda-lo agora, até porque, quando criamos uma instância de range()
não é necessário enviar o argumento de nome self
.
O segundo parâmetro de nome start
é inicializado com o valor None
. Para o Python, None
é igual a zero e assim, se a função range()
for invocada utilizando somente 2 argumentos, ocorrerá que o parâmetro start
será interpretado como sendo zero e então, a lista numérica retornada estará no intervalo fechado, iniciando em zero.
Os 2 outros parâmetros definidos na função serão estudados na sequência, o nosso objetivo agora, foi somente estudar o parâmetro defaulta da função de inicialização da classe range()
.
No trecho de código a seguir, implementamos uma função que define parâmetros default.
def login(user="user", senha="123")
print( "user: " . user
print( "senha: " . senha
A função login()
, definida no código acima, pode ser invocada sem que seja passado um único argumento, até porque, por padrão, há valores definidos para todos os parâmetros declarados.
É importante dizer que, se invocarmos uma função sem passarmos os parâmetros que estão definidos, o Python levantará uma exceção, porém, com o uso de parâmetros default, a obrigatoriedade torna-se facultativo.
EXEMPLO FEITO EM AULA
# coding: utf-8
# =================
# = eXcript.com =
# =================
# PARÂMETROS DEFAULT
def login(sistema, usuario="root", senha="123"):
print("Usuário: ", usuario)
print("Senha: ", senha)
login()
Tags curso, python, função, parâmetro, argumento, parâmetro default, blog
Comentários
comments powered by Disqus