Modulo 7: Funções
Mateus de Oliveira Silveira
September 8, 2024
1 Introducao
Neste documento, discutiremos conceitos fundamentais da linguagem de programacao Python, focando
nas funcoes basicas. As funcoes permitem encapsular logica, tornando o codigo mais organizado e reuti-
lizavel.
2 Modulo 7: Funcoes Basicas
2.1 Definicao de Funcoes
Uma funcao e um bloco de codigo que executa uma tarefa especifica. Funcoes ajudam a modularizar o
código, tornando-o mais legível e reutilizável. Para definir uma funcao em Python, utilizamos a palavra-
chave def, seguida pelo nome da funcao e os parametros entre parenteses.
Exemplo de Definicao de Funcao
Veja o exemplo abaixo de uma funcao que soma dois numeros:
1 def soma (a , b ) :
2 """ Esta funcao retorna a soma de dois numeros . """
3 return a + b
A funcao soma aceita dois argumentos a e b e retorna a soma deles.
Documentacao de Funcoes
Uma boa pratica ao definir funcoes e incluir uma docstring, que e uma string de descricao logo abaixo
da definicao da funcao. A docstring explica o que a funcao faz, quais sao seus parametros e o que ela
retorna. Isso facilita a compreensao do código por outros programadores.
Chamando Funcoes
Para usar uma funcao, basta chamá-la pelo seu nome e passar os argumentos necessários. Por exemplo:
1 resultado = soma (5 , 3)
2 print ( " A soma é : " , resultado )
Neste exemplo, chamamos a funcao soma com os argumentos 5 e 3, e armazenamos o resultado na
variavel resultado. Em seguida, imprimimos o resultado na tela.
Funcoes com Valores Padrão
As funcoes também podem ter valores padrão para os parâmetros. Isso significa que, se um argumento
não for fornecido, o Python usará o valor padrão. Veja um exemplo:
1 def saudacao ( nome = " Mundo " ) :
2 """ Esta funcao imprime uma saudacao . """
3 print ( f " Olá , { nome }! " )
4
5 saudacao () # Usará o valor padrão
6 saudacao ( " João " ) # Usará o argumento fornecido
1
Neste caso, se chamarmos saudacao() sem argumentos, a função usará o valor padrão "Mundo". Se
fornecermos um argumento, como "João", a função imprimirá "Olá, João!".
2.2 Chamada de Funções
Uma vez que a função é definida, você pode chamá-la em qualquer parte do seu programa. Para chamar
uma função, basta usar seu nome seguido dos argumentos necessários entre parênteses.
Exemplo de Chamada de Função
Abaixo está um exemplo detalhado de como chamar a função soma e imprimir o resultado:
1 def soma (a , b ) :
2 """
3 Esta função recebe dois números e retorna sua soma .
4
5 Parâmetros :
6 a ( int ou float ) : O primeiro número a ser somado .
7 b ( int ou float ) : O segundo número a ser somado .
8
9 Retorna :
10 int ou float : A soma de a e b .
11 """
12 return a + b
13
14 # Chamada da função
15 resultado = soma (5 , 3)
16
17 # Impressão do resultado
18 print ( " A soma é : " , resultado )
Explicação do Código
• Definição da Função: A função soma é definida com dois parâmetros, a e b, que representam os
números a serem somados.
• Docstring: Dentro da função, há uma docstring que explica o propósito da função, os parâmetros
que ela aceita e o que ela retorna.
• Retorno: A função retorna a soma dos dois números.
• Chamada da Função: A função é chamada com os argumentos 5 e 3.
• Impressão do Resultado: O resultado da soma é armazenado na variável resultado, que é então
impressa na tela.
Neste exemplo, a função soma é chamada, e o resultado, que é 8, é impresso na saída.
2.3 Retorno de Valores
Funções em Python podem retornar valores que podem ser utilizados em outras partes do seu código.
O valor retornado é aquele especificado na instrução return. Quando a função é chamada, o fluxo de
execução do programa se interrompe e o valor retornado pode ser atribuído a uma variável ou utilizado
diretamente em uma expressão.
Exemplo de Retorno de Valores
Vamos considerar uma função que calcula a potência de um número. Esta função recebe dois argumentos:
a base e o expoente. Usaremos o operador de potenciação ** para calcular o resultado.
1 def potencia ( base , expoente ) :
2 """ Esta função calcula a potência de um número . """
3 return base ** expoente
2
Neste exemplo, a função potencia realiza a seguinte operação:
1. Recebe dois argumentos: base e expoente. 2. Calcula base elevado a expoente utilizando a
sintaxe base ** expoente. 3. O resultado da operação é retornado para o chamador da função.
Agora, vamos ver como podemos chamar esta função e utilizar o valor retornado:
1 resultado = potencia (2 , 3)
2 print ( " 2 elevado a 3 é : " , resultado )
No trecho de código acima, fazemos o seguinte:
- Chamamos a função potencia com os argumentos 2 e 3. - O valor retornado, que é 8, é armazenado
na variável resultado. - Por fim, usamos print para exibir a mensagem "2 elevado a 3 é: 8" no console.
Este exemplo ilustra como o retorno de valores de uma função permite a reutilização dos resultados
em outras partes do programa, facilitando a construção de lógica mais complexa e modular.
Funções que Não Retornam Valores
Além das funções que retornam valores, também existem funções que não retornam nada. Essas funções
realizam operações, mas não precisam fornecer um resultado ao chamador. Em Python, se não houver
uma instrução return, ou se a instrução return não tiver um valor, a função retornará None por padrão.
1 def imprimir_mensagem ( mensagem ) :
2 """ Esta função imprime uma mensagem no console . """
3 print ( mensagem )
No exemplo acima, a função imprimirm ensagemrealizaaseguinteoperao :
1. Recebe um argumento: mensagem. 2. Imprime a mensagem no console usando a função
print. 3. Não retorna nenhum valor, portanto, retorna None implicitamente.
Chamando essa função:
1 imprimir_mensagem ( " Olá , mundo ! " )
A saída será "Olá, mundo!", mas não haverá um valor retornado que possa ser armazenado
em uma variável. Isso é útil quando a intenção da função é realizar uma ação, como exibir
informações, em vez de calcular e retornar um resultado.
3 Conclusao
Nesta aula, abordamos a definicao e uso de funcoes em Python. Discutimos como encapsular
logica em funcoes, como chamar estas funcoes e como trabalhar com argumentos e valores de
retorno. A utilizacao de funcoes permite criar um codigo mais organizado e reutilizavel,
facilitando o desenvolvimento de programas mais complexos.