Home >Backend Development >Python Tutorial >How Can Python Functions Return Multiple Values?

How Can Python Functions Return Multiple Values?

Susan Sarandon
Susan SarandonOriginal
2024-11-22 07:57:10637browse

How Can Python Functions Return Multiple Values?

Returning Multiple Values from Python Functions

In Python, a function can only return a single value. However, there are several ways to effectively return multiple values from a function.

Returning a Tuple

Tuples are immutable sequences that can hold any number of values. To return a tuple from a function, simply use the return statement followed by the values enclosed in parentheses or separated by commas. For example:

def get_coordinates():
    x = input("Enter the x-coordinate: ")
    y = input("Enter the y-coordinate: ")
    return x, y

When called, this function will return a tuple containing the x and y coordinates. You can assign these values to separate variables as follows:

x, y = get_coordinates()

Returning a List

Lists are mutable sequences that can also be used to return multiple values from a function. The syntax is similar to returning a tuple, but the values are enclosed in square brackets.

def get_stats():
    mean = calculate_mean()
    median = calculate_median()
    return [mean, median]

To assign the returned values to separate variables, use the following syntax:

mean, median = get_stats()

Using a Custom Class or NamedTuple

If you need to return multiple values that are related, you can create a custom class or use a NamedTuple to encapsulate the data. This approach can improve code readability and maintainability.

from dataclasses import dataclass

@dataclass
class Coordinates:
    x: float
    y: float
    
def get_coordinates():
    x = input("Enter the x-coordinate: ")
    y = input("Enter the y-coordinate: ")
    return Coordinates(x, y)

coordinates = get_coordinates()
print(f"X-coordinate: {coordinates.x}, Y-coordinate: {coordinates.y}")

Conclusion

There are several ways to return multiple values from a Python function. The best approach depends on the specific use case and desired data structure. Tuples and lists are simple and convenient options, while custom classes and NamedTuples offer more flexibility and code organization.

The above is the detailed content of How Can Python Functions Return Multiple Values?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn