Como usar o comando return no Python

Publicado em: 24/04/2026
Tempo de leitura: 8 minutos
Como usar o comando return em funções Python

Ao iniciar sua jornada na programação, entender como trocar informações entre partes de um código é fundamental. Entender como usar o comando return no Python é o divisor de águas entre escrever scripts simples e desenvolver sistemas complexos e profissionais. Muitos iniciantes confundem a exibição de um dado na tela com a devolução real de um valor para o sistema. Nesta leitura, você descobrirá por que esse comando é capaz de interromper a execução de uma função e como ele permite que seu código seja muito mais eficiente e organizado.

O que é o comando return e qual sua função real?

Em Python, o comando return é uma instrução utilizada dentro de funções para enviar um valor de volta para quem a chamou. Imagine que uma função é como um prestador de serviço: você entrega os materiais (parâmetros), ele executa o trabalho e, ao final, te entrega o produto pronto. Esse “entrega do produto” é o papel do return.

Sem o return, a função executa suas tarefas, mas não “guarda” o resultado para uso posterior. Se você quer calcular um valor e depois usá-lo para alimentar um conversor de moedas, por exemplo, o resultado do cálculo precisa ser retornado para que a próxima etapa do código consiga lê-lo.

Por que o seu código para quando encontra um return?

Uma das dúvidas mais comuns de quem está aprendendo a lógica de programação com Python é o motivo de as linhas de código abaixo do return serem ignoradas. A resposta é simples: o return possui uma função dual. Ele não apenas devolve um valor, mas também encerra imediatamente a execução da função atual.

Quando o interpretador do Python encontra a palavra-chave return, ele empacota o valor especificado e sai da função, voltando para o ponto principal do programa. Qualquer código escrito dentro daquela mesma função, mas após o return, é considerado “código morto” (unreachable code), pois nunca será executado. Isso é extremamente útil para criar condições de saída, evitando que o programa processe dados desnecessários se um erro for detectado precocemente.

A diferença crucial entre print() e return

Este é o erro número um de quem está começando. O print() serve apenas para mostrar algo ao usuário no terminal. Ele não “dá” o valor para o programa. Já o return torna o valor disponível para ser armazenado em uma variável ou passado para outra função.

Python
def soma_com_print(a, b):
    print(a + b)

def soma_com_return(a, b):
    return a + b

# Tentando usar o resultado
resultado1 = soma_com_print(5, 5) # Aparece 10 na tela, mas resultado1 é None
resultado2 = soma_com_return(5, 5) # Não aparece nada na tela, mas resultado2 vale 10
print(resultado2 * 2) # Saída: 20

Se você estiver desenvolvendo algo como um gerenciador de senhas simples, precisará do valor retornado para verificar se a senha está correta, e não apenas imprimi-la no console.

Como retornar múltiplos valores no Python

Diferente de algumas linguagens mais rígidas como Java ou C++, o Python facilita muito a devolução de vários dados ao mesmo tempo. Ao separar valores por vírgulas após o return, o Python automaticamente os agrupa em uma estrutura chamada tupla.

Python
def calcular_estatisticas(lista_numeros):
    menor = min(lista_numeros)
    maior = max(lista_numeros)
    media = sum(lista_numeros) / len(lista_numeros)
    return menor, maior, media

minimo, maximo, avg = calcular_estatisticas([10, 20, 30])

Essa flexibilidade é essencial ao trabalhar com funções em Python que precisam processar conjuntos de dados complexos de uma só vez. Para aprender mais sobre essa linguagem, consulte a documentação oficial na Python Software Foundation.

O papel do return em estruturas condicionais

O uso estratégico do return dentro de blocos if e else permite que você limpe seu código, eliminando a necessidade de múltiplos níveis de indentação. Essa técnica é chamada de “Guarda” ou “Saída Antecipada”.

Em vez de colocar todo o código dentro de um grande else, você verifica as condições de erro primeiro e usa o return para sair o quanto antes. Veja este exemplo aplicado a um sistema que poderia ser usado para ler senhas de forma segura:

Python
def validar_acesso(usuario, senha):
    if not usuario:
        return "Usuário inválido"
    if len(senha) < 8:
        return "Senha muito curta"
    
    # Se chegou aqui, os dados são válidos
    return "Acesso permitido"

Retornando funções e expressões complexas

No Python, tudo é um objeto. Isso significa que você pode retornar até mesmo outras funções ou classes. Esse conceito é a base de recursos avançados como os decoradores em Python. Além disso, é possível retornar o resultado de expressões lógicas, o que resulta em valores booleanos (True ou False).

Ao entender esse comportamento, você ganha poder para utilizar o return de forma criativa, integrando-o com o operador ternário para escrever funções de uma única linha que são extremamente poderosas e legíveis.

Boas práticas ao usar o return

Para manter seu código profissional, siga algumas diretrizes recomendadas pela comunidade, como as descritas no guia de estilo PEP 8:

  • Consistência: Se uma função pode retornar um valor em um ponto, ela deve retornar algo (mesmo que seja None) em todos os pontos de saída possíveis.
  • Simplicidade: Evite funções que retornam tipos de dados completamente diferentes (ex: uma hora retorna uma string, outra hora um dicionário), pois isso confunde quem usa seu código.
  • Documentação: Sempre use Docstrings para especificar o que sua função retorna.

Se você estiver enfrentando problemas onde sua função parece parar sem motivo, verifique se não há um return acidental dentro de um loop. Um erro comum é colocar o retorno dentro de um for, fazendo com que o loop execute apenas uma única vez e pare.

Exemplos práticos de aplicação

Vamos ver como o return se comporta em um cenário de manipulação de dados, algo muito comum para quem trabalha com análise de dados com pandas e numpy. Imagine que precisamos limpar uma string de preço recebida de um site.

Python
def limpar_preco(texto):
    if "R$" in texto:
        valor_limpo = texto.replace("R$", "").strip()
        return float(valor_limpo)
    return 0.0

preco_final = limpar_preco("R$ 150,00".replace(",", "."))
print(f"O valor para cálculo é: {preco_final}")

Note que o return permite que transformemos o dado sujo em um número real que pode ser somado, multiplicado ou guardado em um banco de dados.

O que acontece se eu esquecer o return?

Toda função no Python retorna algo. Se você não escrever explicitamente a palavra return, a função retornará automaticamente o valor None. Isso é frequente em funções que realizam ações (como salvar um arquivo) em vez de cálculos. No entanto, tentar realizar operações matemáticas com o resultado de uma função que não tem return causará um erro de tipo (TypeError).

Para entender melhor como lidar com essas ausências de valor, é recomendável estudar sobre o None no Python e como ele impacta o fluxo do seu software.

Perguntas Frequentes

O return pode ser usado fora de uma função?

Não. O uso do return fora de uma função resultará em um erro de sintaxe (SyntaxError). Ele é exclusivo para o escopo de funções.

Posso ter mais de um return na mesma função?

Sim, você pode ter vários. No entanto, apenas o primeiro que for alcançado pelo fluxo de execução será processado, finalizando a função naquele momento.

Qual a diferença entre return e yield?

O return encerra a função e devolve o valor. O yield pausa a função e devolve um valor, permitindo que ela continue de onde parou depois, criando o que chamamos de geradores.

O return interrompe um loop for ou while?

Sim. Se o return estiver dentro de um loop que, por sua vez, está dentro de uma função, ele interromperá tanto o loop quanto a própria função imediatamente.

Posso retornar uma lista ou um dicionário?

Com certeza. O Python permite retornar qualquer tipo de objeto, incluindo listas complexas, dicionários, objetos de classes personalizadas e até outras funções.

É obrigatório colocar parênteses no return?

Não é necessário usar parênteses, como em return (valor). O padrão idiomático do Python é usar apenas return valor.

Como retornar nada de forma explícita?

Você pode usar apenas a palavra return sozinha ou return None. Ambos encerrarão a função e devolverão o valor nulo do Python.

O return aceita expressões lógicas?

Sim, você pode fazer algo como return x > 10. A função avaliará a expressão e retornará True ou False conforme o resultado.

Dominar o comando return é o que separa os amadores dos programadores que escrevem códigos reutilizáveis e limpos. Agora que você entende como ele controla o fluxo e a saída de dados, experimente refatorar seus scripts antigos substituindo print() por retornos lógicos e veja como a estrutura do seu projeto se torna muito mais profissional e fácil de testar.

Compartilhe:

Facebook
WhatsApp
Twitter
LinkedIn

Conteúdo do artigo

    Artigos relacionados

    Comparativo dos melhores cursos de Python para aprender programação
    Fundamentos
    Foto de perfil de Leandro Hirt da Academify

    8 Melhores Cursos de Python de 2026 Para Iniciantes

    Você quer aprender a programar, mas não sabe por onde começar. Talvez você tenha ouvido falar que Python é a

    Ler mais

    Tempo de leitura: 11 minutos
    15/04/2026
    Como usar f-strings para formatar números e moedas em Python
    Fundamentos
    Foto de perfil de Leandro Hirt da Academify

    Como usar f‑strings para formatar números e moedas no Python

    Dominar a exibição de dados é uma das habilidades mais essenciais para qualquer desenvolvedor, e aprender como usar f-strings para

    Ler mais

    Tempo de leitura: 10 minutos
    13/04/2026
    Como resolver loop infinito que nunca termina em Python
    Fundamentos
    Foto de perfil de Leandro Hirt da Academify

    Por que meu loop nunca termina? Descubra a solução

    Você acabou de escrever um script incrível, aperta o botão de executar e, de repente, o cursor fica piscando infinitamente

    Ler mais

    Tempo de leitura: 9 minutos
    01/04/2026
    Imagem ilustrativa de conteúdo Python para YouTube
    Fundamentos
    Foto de perfil de Leandro Hirt da Academify

    Como baixar vídeos do YouTube com Python em 5 minutos

    Você já se perguntou como transformar horas de conteúdo do YouTube em arquivos locais para assistir offline? Seja para estudar

    Ler mais

    Tempo de leitura: 10 minutos
    22/03/2026
    Diferença entre operadores is e == em Python
    Fundamentos
    Foto de perfil de Leandro Hirt da Academify

    == vs is em Python: descubra o que realmente acontece

    Você já se deparou com uma situação em que dois objetos parecem idênticos, mas o Python insiste que eles são

    Ler mais

    Tempo de leitura: 9 minutos
    21/03/2026
    Menu interativo no terminal criado com Python
    Fundamentos
    Foto de perfil de Leandro Hirt da Academify

    Como criar um menu interativo no terminal com Python

    Criar uma interface eficiente para o usuário não exige sempre o desenvolvimento de janelas complexas ou botões coloridos. Muitas vezes,

    Ler mais

    Tempo de leitura: 10 minutos
    20/03/2026