Parâmetros…


Eu já havia comentado sonbre isto no post sobre Funções, mas agora vou mostrar um exemplo bem simples e prático :

Vejam o código abaixo

#!/usr/bin/python

def func(k,v,d={}):
    d[k]=v
    return d

dic = func('sergio',29)
print dic
dic2 = func('daniella',28)
print dic2
dic3 = func('arthur',4.5,{})
print dic3
dic4 = func('berlotto',65)
print dic4

Antes de mais nada, façam um teste de mesa, e escrevam a saída de dic, dic2, dic3 e dic4 num papel, só depois executem e vejam o resultado!

Agora podem ver a explicação aqui. O problema é como/quando são instanciados os valores para parâmetros com valores default mutáveis em métodos.

Ah, e como dica que veio do blog Programando Python, vocês podem testar este código no Online Python Tutor!

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

w

Conectando a %s