Comment attribuer 2 variables différentes aux valeurs de retour d'une fonction qui renvoie 2 valeurs ?


Jeppe Vendel

Désolé pour le titre très brouillon. Ce que j'ai, c'est une fonction qui renvoie 2 valeurs différentes :

def func(name):

return value1, value2

Maintenant, je voudrais affecter ces 2 valeurs à des variables sur une seule ligne. Voilà ce que j'ai essayé :

x,y = func(name)[0] , [1]

La variable x est affectée correctement, mais la variable y est affectée juste en tant que [1].
Si c'est pertinent : Le [0] est un tableau et le [1] est un DataFrame sous forme de fichier .csv.

jpp

Tu es proche. C'est encore plus simple que vous ne le pensez, vous pouvez extraire sans référence aux indices :

def func(name):
    # do something
    return value1, value2

x, y = func(var)

funcrenvoie un tuple (notez que les parenthèses ne sont pas obligatoires). Vous pouvez ensuite déballer via le déballage séquentiel. Je vous conseillerais de choisir des noms de variables informatifs.

Articles connexes