web-dev-qa-db-ja.com

Pythonの関数から複数の値を返す方法は?

Pythonの関数から複数の変数を返す方法は?

38
user46646

返す値をコンマで区切ります:

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

コンマはタプルであることを示しているため、値を括弧で囲むことができます。

return (first_name, last_name)

次に、関数を呼び出すとき、a)すべての値を1つの変数にタプルとして保存するか、b)変数名をコンマで区切ります

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
140
Cristian

また、結果を処理するコードもあります。

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

(x,y) = foo(50)
13
Staale

タプルとして返します。

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