Comment retourner plus d'une valeur d'une fonction en Python? [dupliquer]

cette question a déjà une réponse ici:

Comment retourner plus d'une variable d'une fonction en Python?

34
demandé sur Eugene Yarmash 2009-01-08 12:41:22

3 réponses

vous séparez les valeurs que vous voulez retourner par des virgules:

def get_name():
   # you code
   return first_name, last_name

les virgules indiquent que c'est un tuple, donc vous pouvez envelopper vos valeurs par des parenthèses:

return (first_name, last_name)

puis quand vous appelez la fonction vous a) enregistrer toutes les valeurs à une variable comme un tuple, ou b) séparer vos noms de variables par des virgules

name = get_name() # this is a tuple
first_name, last_name = get_name()
(first_name, last_name) = get_name() # You can put parentheses, but I find it ugly
128
répondu Cristian 2009-01-08 09:45:54

voici aussi le code pour gérer le résultat:

def foo (a):
    x=a
    y=a*2
    return (x,y)

(x,y) = foo(50)
12
répondu Staale 2009-01-08 09:46:15

retour en tant que tuple, p.ex.

def foo (a):
    x=a
    y=a*2
    return (x,y)
5
répondu ConcernedOfTunbridgeWells 2009-01-08 09:42:25