Python Version 3 Logo

[Python]関数で複数の戻り値を返す方法

Python の関数の戻り値で複数の戻り値を返却する方法を説明します。
Python では簡単に複数の戻り値を返すことができます。

実装方法

下記のようにカンマ区切りで戻り値を返します。

def sample():
  return 123, 'abc'

Python だと構文上必要な場合以外は間まで区切られた値は丸括弧を省略したタプルとなります。なので、この戻り値の返し方だと戻り値の型はタプルになります。

戻り値の確認

戻り値を確認してみます。

def sample():
  return 123, 'abc'

result = sample()

print(result)

上記のプログラムを実行してみます。

$ python sample.py

# (123, 'abc')

このようにタプル型で戻り値が返却されます。

戻り値を複数の変数で受け取る

ちなみに戻り値を複数の変数で受け取ることもできます。

def sample():
  return 123, 'abc'

n, s = sample()

print(n)
print(s)

これを実行すると、

$ python sample.py
# 123
# abc

こんな感じで複数の戻り値を複数の変数で受け取ることができます。

最後に

他の言語だと配列に戻り値をセットしてその配列を戻り値で返すなどしていましたが、 Python だと簡単に複数の戻り値を返すことができます。わざわざ戻り値を一つにする手間などが省けるので、うまく利用すればコード量の削減も期待できそうですね。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です