English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Neste artigo, você aprenderá sobre funções, o que são funções, a sintaxe das funções, sua composição e tipos. Além disso, você também aprenderá como criar funções em Python.
Em Python, uma função é um grupo de instruções relacionadas que executam uma tarefa específica.
As funções ajudam a decompor nosso programa em módulos menores. À medida que nosso projeto cresce, as funções tornam-no mais organizado e fácil de gerenciar.
Além disso, evita que você escreva o mesmo código repetidamente, tornando o código reutilizável.
def function_name(parameters): """docstring""" statement(s)
O que é mostrado acima é a definição da função composta pelos seguintes componentes.
A palavra-chave def marca o início da função.
usados para identificar de forma única o nome da função. A nomenclatura das funções segueEscrever identificadores em Pythonda mesmaRegras.
Passam valores para a função pelos parâmetros. Eles são opcionais.
O ponto e vírgula (:) marca o final do cabeçalho da função.
Docstring opcional (docstring), usada para descrever a função.
Um ou mais comandos válidos que compõem o corpo da função. Os comandos devem ter o mesmo nível de recuo (normalmente4um espaço em branco).
Instrução return opcional, usada para retornar valores da função.
def saudar(name): "" Esta é uma função de saudação Passe por meio do parâmetro name Nome da pessoa a ser saudada "" print("Hello, " + name + ". Bom dia!")
Após definir a função, podemos chamá-la de outra função, programa ou prompt do Python. Para chamar uma função, basta digitar o nome da função com os parâmetros apropriados.
>>> saudar('Paul') Olá, Paul. Bom dia!
Atenção:Tente executar o código acima em um programa Python com definição de função para ver a saída.
def saudar(name): "" Esta é uma função de saudação Passe por meio do parâmetro name Nome da pessoa a ser saudada "" print("Hello, " + name + ". Bom dia!") saudar('Paul')
A primeira string após o cabeçalho da função é chamada de docstring, abreviação de string de documentação, que brevemente descreve a função.
Embora seja opcional, a documentação é um bom hábito de programação. A menos que você se lembre do horário e do que você jantou ontem, certifique-se de comentar seu código.
No exemplo acima, temos uma docstring logo abaixo da cabeçalho da função. Nós geralmente usamos aspas triplas para estender a docstring em linhas múltiplas. A string pode ser usada como atributo da função __doc__.
Por exemplo:
Tente executar o seguinte conteúdo no shell do Python para ver a saída.
>>> print(saudar.__doc__) Esta é uma função de saudação Passe por meio do parâmetro name Nome da pessoa a ser saudada
Para obter mais informações sobre docstrings no Python, acesseDocstrings do Python.
A instrução return é usada para sair da função e retornar ao local da chamada da função.
return [lista_de_expressões]
Esta instrução pode conter uma expressão, que será avaliada e retornará um valor. Se não houver expressão nessa instrução ou se a instrução return não existir dentro da função, a função retornará o objeto None.
Por exemplo:
>>> print(saudar("Maio")) Olá, Maio. Bom dia! None
None é o valor de retorno, porque a função greet() imprime diretamente o nome e não usa a instrução return.
def absoluto_valor(num): """Esta função retorna o valor absoluto do número de entrada""" if num >= 0: return num else: return -num print(absoluto_valor(2)) print(absoluto_valor(-4))
Resultados de Saída
2 4
O escopo da variável é a parte do programa onde podemos identificar a variável. Não podemos ver os parâmetros e variáveis definidos dentro da função desde o exterior. Portanto, elas têm escopo local.
A vida útil da variável é o tempo em que a variável sai da memória. A vida útil da variável dentro da função é tão longa quanto a execução da função.
Uma vez que retornamos da função, elas são destruídas. Portanto, a função não pode lembrar do valor das variáveis da chamada anterior.
Este é um exemplo para explicar a vida útil das variáveis dentro da função.
def my_func(): x = 10 print("Valor dentro da função:", x) x = 20 my_func() print("Valor fora da função:", x)
Resultados de Saída
Valor dentro da função: 10 Valor fora da função: 20
Aqui, podemos verxcom valor inicial20. Mesmo que a função my_func() definaxmudar para10ela também não afetará o valor fora da função.
Isso acontece porque as variáveis dentro da funçãox comA variável x fora da função é diferente. Embora tenham o mesmo nome,Mas são duas variáveis diferentes com diferentes escopos.
Por outro lado, podemos ver as variáveis fora da função desde o exterior. Elas têm escopo global, o que significa que podem ser usadas tanto dentro quanto fora da função.
Podemos ler esses valores do interior da função, mas não podemos alterá-los (escrever). Se quisermos alterar o valor de uma variável fora da função, devemos usar a palavra-chave global, declarando-as como variáveis globais.
Basicamente, podemos dividir as funções em dois tipos principais: