Pular para o conteúdo
EasyCode

O que é função em Python? Como criar e usar, com exemplos

Por Mattheus Moraes · Exemplos de código testados · Atualizado em 25 de outubro de 2026 · Leitura de 4 min

Resposta rápida

Função é um bloco de código com nome que você escreve uma vez e usa quantas vezes quiser. Em Python, cria-se com def, recebe valores chamados parâmetros e pode devolver um resultado com return. Por exemplo, def area(base, altura): return base * altura cria uma função chamada area.

A ideia: uma receita com nome

Pense numa receita de bolo. Você escreve os passos uma vez e usa sempre que quiser bolo, mudando só os ingredientes. A função faz o mesmo no código: você escreve os passos uma vez, dá um nome e chama esse nome sempre que precisar. Isso evita repetir código e deixa os programas mais fáceis de ler e de consertar.

Criando e chamando uma função

Você cria com a palavra def, o nome, parênteses e dois-pontos. O código da função fica recuado logo abaixo:

def saudacao(nome):
    return f"Olá, {nome}!"

print(saudacao("Ana"))
print(saudacao("Bia"))
Olá, Ana!
Olá, Bia!

Cada parte tem um papel:

Escrever saudacao("Ana") é chamar a função. O valor "Ana" que vai entre os parênteses é o argumento.

Mais de um parâmetro

Separe os parâmetros por vírgula:

def area_retangulo(base, altura):
    return base * altura

print(area_retangulo(4, 3))
12

A ordem importa: o primeiro valor vai para base e o segundo para altura.

Valor padrão

Um parâmetro pode ter um valor padrão, usado quando você não passa nada naquela posição:

def desconto(valor, percentual=10):
    return valor - valor * percentual / 100

print(desconto(200))
print(desconto(200, 25))
180.0
150.0

Sem o segundo argumento, o desconto é de 10%. Com 25, o padrão é ignorado. O resultado aparece com .0 porque a divisão em Python devolve um número com decimais.

print ou return? A diferença que confunde todo mundo

O print mostra algo na tela. O return devolve um valor para o resto do programa usar. Veja a diferença:

def mostra(x):
    print(x * 2)

def devolve(x):
    return x * 2

a = mostra(5)
b = devolve(5)
print(a, b)
10
None 10

O 10 sozinho veio do print dentro de mostra, que só mostra e não devolve nada. Por isso a ficou com None, que significa "nada". Já b guardou o 10 devolvido, e dá para usar em contas. Quando você precisa do resultado depois, use return.

Para que servem as funções, na prática

Boas práticas de quem está começando

Erros comuns com funções

Crie a sua função de desconto

Rode o código. Depois crie uma função juros com dois parâmetros, o valor e a taxa, que devolva o valor com a taxa aplicada, e teste com três números diferentes.

def desconto(valor, percentual=10):
    return valor - valor * percentual / 100

print(desconto(200))
print(desconto(200, 25))

Resultado esperado:

180.0
150.0

A função calcula o valor menos o percentual. Quando você passa só o primeiro argumento, vale o padrão de 10%. Quando passa o segundo, ele substitui o padrão.

Praticar no editor do EasyCode

Perguntas frequentes

Qual a diferença entre parâmetro e argumento?

Parâmetro é o nome que aparece na definição da função (def saudacao(nome)). Argumento é o valor que você passa ao chamar (saudacao("Ana")).

Toda função precisa de return?

Não. Uma função pode apenas executar uma ação, como mostrar algo na tela. Sem return, ela devolve None.

Qual a diferença entre função e método?

Método é uma função que pertence a um tipo de dado, e se chama com ponto, como em "texto".upper(). Já uma função solta, como len("texto"), não tem ponto na frente.

Uma função pode chamar outra função?

Pode, e isso é muito comum. É assim que programas grandes são montados a partir de pedaços pequenos.

Fontes e para saber mais

Próximo passo da trilhaComo ler uma mensagem de erro em Python sem pânico (com exemplos reais)

Leia também

Gostou? Compartilhe: WhatsApp LinkedIn