Funções em Python - ou qualquer linguagem de programação - muitas vezes tomam argumentos - ou parâmetros - que representam valores a função irá usar durante o seu funcionamento. Enquanto uma função pode tomar 0 parâmetros, usando a sintaxe do Python, uma função pode ter muitos argumentos , ou argumentos definidos com valores padrão , ou até mesmo listas de argumentos variáveis de comprimento arbitrário . Funções e parâmetros
uma função Python típico conter zero ou mais parâmetros. Como um exemplo , aqui está uma definição de função , incluindo alguns parâmetros :
def nameSquare (x, nome): código
/* da função * /Tablet
O nameSquare função irá executar qualquer que seja cálculos que fazem parte do seu código , usando os parâmetros definidos . No entanto, quando um programador chama a função para uso , ele não precisa saber nada além do nameSquare função requer duas variáveis, um número inteiro "x" e uma string " nome". Para chamar esta função de outro código , um programador deve fornecer dois - e apenas dois - variáveis ou valores :
x = nameSquare (y , z)
y = nameSquare ( 5, 'Bob ')
z = nameSquare (8) //erro . Segundo argumento não definido
Parâmetros padrão
em determinados cenários , um programador pode optar por ter certos argumentos em um padrão de definição de função para um determinado valor. Usando a função nameSquare , o "nome" parâmetro pode padrão para uma string representando um nome:
def nameSquare (x, name = 'bob' ) :
Agora , quando o programador chama o função no código, ele não precisa fornecer um valor para o segundo argumento ( nome). O programador pode fornecer um argumento , se ele deseja substituir o padrão :
y = nameSquare ( 5)
z = nameSquare (4, ' Robert' )
argumentos
similar à definição de valores padrão para argumentos , um programador pode também definir uma série de argumentos , criando pares de valores de palavra-chave. Considere nameSquare como exemplo:
def nameSquare (x, name = 'bob' , title = 'rei' , passatempo = ' selos ' ) :
Qualquer argumento ou padrão deve seguir o argumentos necessários (x). O argumento obrigatório também deve vir sempre antes de argumentos quando um usuário chama uma função . No entanto , os próprios argumentos podem ser chamados em qualquer ordem , desde que a palavra-chave adequada é usado :
x = nameSquare (x, name = 'Harry' , passatempo = ' selos ')
y = nameSquare (x)
z = nameSquare (x, title = ' rei ')
z = nameSquare ( name = ' George' ) //erro, faltando 'x' argumento
listas de argumento variável
Além disso, uma função pode ter uma lista variável de argumentos por meio do uso da palavra-chave " * args " . A lista de argumentos variável significa simplesmente que o usuário pode inserir uma quantidade arbitrária de argumentos para uma função , que a função irá analisar :
def nameSquare (x, * args ):
dentro da função , * args representa uma coleção de argumentos variáveis fornecidas pelo programador. Os argumentos em " * args " são acessíveis dentro da função pelo índice (* args [0] , * args [ 1] ) . A lista de argumentos variável deve ocorrer como o último parâmetro fornecido na definição .
X = nameSquare ( x , y , z , 4 , 5 ) //* args [ 0 ] é y , * args [ 1 ] é z , etc
y = nameSquare (x , 2, 4 ) //* args [0] é 2, * args [ 1] é 4