Funções do Python
- Página Anterior Loop For do Python
- Próxima Página Lambda do Python
A função é um bloco de código que é executado apenas ao ser chamado.
Você pode passar dados (chamados de parâmetros) para a função.
A função pode retornar dados como resultado.
para criar função
No Python, usamos def
Palavra-chave para definir função:
Exemplo
def minha_função(): print("Hello from a function")
Chamada de função
Para chamar a função, use o nome da função seguido de parênteses:
Exemplo
def minha_função(): print("Hello from a function") my_function()
Parâmetros
Informações podem ser passadas para a função como parâmetros.
Os parâmetros são especificados dentro dos parênteses após o nome da função. Você pode adicionar quantos parâmetros quiser, separados por vírgulas.
O exemplo a seguir tem uma função com parâmetro (nome). Quando chamamos essa função, passamos um nome e usamos-o dentro da função para imprimir o nome completo:
Exemplo
def minha_função(nome): print(nome + " Gates") minha_função("Bill") minha_função("Steve") minha_função("Elon")
Valores padrão de parâmetro
O exemplo a seguir mostra como usar valores padrão de parâmetros.
Se chamamos a função sem parâmetros, usamos o valor padrão:
Exemplo
def minha_função(pais = "China"): print("Eu sou de " + country) my_function("Sweden") my_function("India") my_function() my_function("Brazil")
Passar List como parâmetro
Os parâmetros que você enviar para a função podem ser de qualquer tipo de dados (strings, números, listas, dicionários, etc.) e serão tratados como o mesmo tipo de dados dentro da função.
Por exemplo, se você enviar uma Lista como parâmetro, ela continuará a ser uma Lista (lista) quando到达函数:
Exemplo
def my_function(food): for x in food: print(x) fruits = ["apple", "banana", "cherry"] my_function(fruits)
Valor de retorno
Para que a função retorne um valor, use return
Instrução:
Exemplo
def my_function(x): return 5 * x print(my_function(3)) print(my_function(5)) print(my_function(9))
Parâmetros nomeados
Você também pode usar a sintaxe key = value para enviar parâmetros.
A ordem dos parâmetros não importa.
Exemplo
def my_function(child3, child2, child1): print("O menor filho é " + child3) my_function(child1 = "Phoebe", child2 = "Jennifer", child3 = "Rory")
No documento do Python, a palavra "parâmetros nomeados" geralmente é abreviada para kwargs.
Parâmetros arbitrários
Se você não souber quantos parâmetros serão passados para sua função, adicione * antes do nome do parâmetro na definição da função.
Dessa forma, a função receberá um tupla de parâmetros e poderá acessar os itens conforme necessário:
Exemplo
Se o número de parâmetros for desconhecido, adicione * antes do nome do parâmetro:
def my_function(*kids): print("O menor filho é " + kids[2]) my_function("Phoebe", "Jennifer", "Rory")
instrução pass
A definição da função não pode estar vazia, mas se você escrever uma definição de função sem conteúdo por algum motivo, use a instrução pass para evitar erros.
Exemplo
def myfunction: pass
Recursão
O Python também aceita recursão de função, o que significa que a função definida pode chamar a si mesma.
A recursão é um conceito comum em matemática e programação. Isso significa que a função chama a si mesma. A vantagem disso é que é possível acessar os dados em循环 para alcançar o resultado.
Os desenvolvedores devem ser muito cuidadosos com a recursão, pois é fácil escrever uma função que nunca termina ou que usa uma quantidade excessiva de memória ou capacidade do processador. No entanto, quando corretamente escrita, a recursão pode ser um método de programação muito eficaz e matemáticamente elegante.
Neste exemplo,tri_recursion()
É definido como uma função que chama a si mesma ("recurse"). Usamos a variável k como dados e decrementamos (-1) em cada chamada recursiva. Quando a condição não é maior que 0 (por exemplo, quando é 0), a recursão termina.
Para desenvolvedores novos, pode levar algum tempo para entender como funciona, o melhor método é testar e modificá-lo.
Exemplo
Exemplo de Recursão:
def tri_recursion(k): if(k>0): result = k+tri_recursion(k-1) print(result) else: result = 0 return result print("\n\nExemplo de Resultados de Recursão") tri_recursion(6)
- Página Anterior Loop For do Python
- Próxima Página Lambda do Python