Devolver varios valores de una función en Python

Manav Narula 10 octubre 2023
  1. Use una tupla para devolver múltiples valores de una función en Python
  2. Use una lista para devolver múltiples valores de una función en Python
  3. Use un diccionario para devolver múltiples valores de una función en Python
  4. Usar una clase para devolver varios valores de una función en Python
  5. Utilice una dataclass para devolver varios valores de una función en Python
Devolver varios valores de una función en Python

Las funciones son una parte esencial de cualquier lenguaje de programación. Una función es un bloque de código al que se puede llamar para realizar una operación específica en programación. Por lo general, se usa una función para devolver un valor. Este valor puede ser un número, una cadena o cualquier otro tipo de datos.

En este tutorial, discutiremos diferentes métodos para crear una función que devuelva múltiples valores. Devolveremos diferentes objetos de datos como una lista, un diccionario y otros objetos de una función definida por el usuario para lograr esto.

Use una tupla para devolver múltiples valores de una función en Python

Si devolvemos valores de una función separados por una coma, se consideran una tupla. Las tuplas suelen ir entre paréntesis. En el siguiente código, devolveremos una tupla de una función de Python.

def return_multi(a):
    b = a + 1
    c = a + 2
    return b, c


x = return_multi(5)
print(x, type(x))

Producción :

(6, 7) <class 'tuple'>

Use una lista para devolver múltiples valores de una función en Python

Las listas de Python se utilizan para almacenar diferentes elementos con un nombre común y en posiciones específicas. Las funciones también pueden devolver varios valores en una lista, como se muestra a continuación.

def return_multi(a):
    b = a + 1
    c = a + 2
    return [b, c]


x = return_multi(5)
print(x, type(x))

Producción :

[6, 7] <class 'list'>

Use un diccionario para devolver múltiples valores de una función en Python

Los diccionarios se utilizan para almacenar pares clave-valor en Python. Podemos tener la salida final en un formato mucho más organizado devolviendo un diccionario de una función con teclas asignadas a diferentes valores. Vea el siguiente ejemplo.

def return_multi(a):
    b = a + 1
    c = a + 2
    return {"b": b, "c": c}


x = return_multi(5)
print(x, type(x))

Producción :

{'b': 6, 'c': 7} <class 'dict'>

Usar una clase para devolver varios valores de una función en Python

Las clases contienen diferentes miembros de datos y funciones y nos permiten crear objetos para acceder a estos miembros. Podemos devolver un objeto de tales clases definidas por el usuario en función de la estructura de clases y sus miembros de datos. Por ejemplo:

class return_values:
    def __init__(self, a, b):
        self.a = a
        self.b = b


def return_multi(a):
    b = a + 1
    c = a + 2
    t = return_values(b, c)
    return t


x = return_multi(5)
print(x.a, x.b, type(x))

Producción :

6 7 <class '__main__.return_values'>

Utilice una dataclass para devolver varios valores de una función en Python

Una dataclass es una nueva característica interesante agregada en Python v3.7 y posteriores. Son similares a las clases tradicionales pero se utilizan principalmente para almacenar datos y todas sus funcionalidades básicas ya están implementadas. El decorador @dataclass y el módulo dataclass se utilizan para crear tales objetos. En el código siguiente, devolvemos una dataclass de una función.

from dataclasses import dataclass


@dataclass
class return_values:
    a: int
    b: int


def return_multi(a):
    b = a + 1
    c = a + 2
    t = return_values(b, c)
    return t


x = return_multi(5)
print(x.a, x.b, type(x))

Producción :

6 7 <class '__main__.return_values'>
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Artículo relacionado - Python Function