x, y = func() 多値返却

今回はたまに見かけるあのコードとして「多値返却」を紹介します。

多値返却とは、return文で一度に複数の戻り値を返すことです。受け取る側も関数からの戻り値を複数の変数に一括して代入することが可能です。return の戻り値は「,」カンマで区切ると丸カッコを省略したタプル型と解釈されるので、複数の値を返却可能になります。

使用例

def sample1():
    return "a", "b", "c"

x = sample1()
print(x)
print(type(x))

# 実行結果 ---
# ('a', 'b', 'c')
# <class 'tuple'>
def sample2():
    return "a", "b", "c"

x, y, z = sample2()
print(x, y, z)

# 実行結果 ---
# a b c
def sample3():
    return ("a", "b", "c")

x, y, z = sample3()
print(x, y, z)

# 実行結果 ---
# a b c
def sample4():
    return ["a", "b", "c"]

x, y, z = sample4()
print(x, y, z)

# 実行結果 ---
# a b c