Como retornar múltiplos valores de uma função em Python
Em Python, uma função pode retornar múltiplos valores ao invés de apenas um único resultado. Isso torna o código mais flexível e eficiente.
Retornando múltiplos valores com tuplas
O método mais comum para retornar múltiplos valores é utilizar uma tupla:
def calcular_operacoes(a, b):
soma = a + b
diferenca = a - b
return soma, diferenca
resultado_soma, resultado_diferenca = calcular_operacoes(10, 5)
print(resultado_soma) # Saída: 15
print(resultado_diferenca) # Saída: 5
Utilizando listas para retornar múltiplos valores
Se os valores retornados precisarem ser mutáveis, podemos utilizar listas:
def obter_numeros():
return [1, 2, 3, 4]
numeros = obter_numeros()
print(numeros) # Saída: [1, 2, 3, 4]
Retornando valores com dicionários
Para melhorar a legibilidade, podemos retornar valores nomeados utilizando dicionários:
def estatisticas(numeros):
return {"max": max(numeros), "min": min(numeros), "media": sum(numeros) / len(numeros)}
resultado = estatisticas([10, 20, 30, 40])
print(resultado) # Saída: {'max': 40, 'min': 10, 'media': 25.0}
Quando e por que retornar múltiplos valores em Python?
Retornar múltiplos valores de uma função pode simplificar a lógica do programa, eliminando a necessidade de múltiplas chamadas de função. Dependendo do contexto, tuplas, listas ou dicionários podem ser usados para organizar os valores de maneira clara e eficiente. Essa prática é especialmente útil em cálculos matemáticos, processamento de dados e funções que retornam resultados diversos.
Algumas aplicações:
- Funções matemáticas que retornam diferentes operações sobre os mesmos números.
- Processamento de dados, onde diferentes estatísticas são extraídas de um conjunto.
- Interação com APIs que retornam múltiplos resultados.
- Divisão de informações complexas em partes reutilizáveis dentro do código.
Dicas para quem está começando
- Prefira tuplas quando os valores retornados forem imutáveis.
- Use listas se precisar modificar os valores após a função retornar.
- Dicionários são úteis quando os valores precisam de nomes descritivos.
- Extraia múltiplos valores diretamente em variáveis separadas para maior legibilidade.
- Evite retornar muitos valores ao mesmo tempo para não tornar a função confusa.
Contribuições de Pedro Vasconcellos