Comment les fonctions Python peuvent-elles renvoyer plusieurs valeurs ?

Susan Sarandon
Libérer: 2024-11-22 07:57:10
original
575 Les gens l'ont consulté

How Can Python Functions Return Multiple Values?

Renvoi de plusieurs valeurs à partir de fonctions Python

En Python, une fonction ne peut renvoyer qu'une seule valeur. Cependant, il existe plusieurs façons de renvoyer efficacement plusieurs valeurs à partir d'une fonction.

Renvoyer un tuple

Les tuples sont des séquences immuables qui peuvent contenir n'importe quel nombre de valeurs. Pour renvoyer un tuple à partir d'une fonction, utilisez simplement l'instruction return suivie des valeurs entre parenthèses ou séparées par des virgules. Par exemple :

def get_coordinates():
    x = input("Enter the x-coordinate: ")
    y = input("Enter the y-coordinate: ")
    return x, y
Copier après la connexion

Lorsqu'elle est appelée, cette fonction renverra un tuple contenant les coordonnées x et y. Vous pouvez attribuer ces valeurs à des variables distinctes comme suit :

x, y = get_coordinates()
Copier après la connexion

Renvoi d'une liste

Les listes sont des séquences mutables qui peuvent également être utilisées pour renvoyer plusieurs valeurs à partir d'une fonction. La syntaxe est similaire au renvoi d'un tuple, mais les valeurs sont placées entre crochets.

def get_stats():
    mean = calculate_mean()
    median = calculate_median()
    return [mean, median]
Copier après la connexion

Pour attribuer les valeurs renvoyées à des variables séparées, utilisez la syntaxe suivante :

mean, median = get_stats()
Copier après la connexion

Utilisation d'une classe personnalisée ou NamedTuple

Si vous devez renvoyer plusieurs valeurs liées, vous pouvez créer une classe personnalisée ou utiliser un NamedTuple pour encapsuler les données. Cette approche peut améliorer la lisibilité et la maintenabilité du code.

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}")
Copier après la connexion

Conclusion

Il existe plusieurs façons de renvoyer plusieurs valeurs à partir d'une fonction Python. La meilleure approche dépend du cas d'utilisation spécifique et de la structure de données souhaitée. Les tuples et les listes sont des options simples et pratiques, tandis que les classes personnalisées et NamedTuples offrent plus de flexibilité et d'organisation du code.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal