10

私が関数を持っているとしましょう:

def f():
  ...
  ...
  ...
  return a,b,c

関数の出力でbのみを取得したいと思います。どの割り当てを使用する必要がありますか?

ありがとう。

4

3 に答える 3

29

返されたタプルをいくつかのダミー変数に解凍できます。

_, keep_this, _ = f()

必ずしも使用されていないものである必要はありません_

_(インタラクティブインタプリタでダミー名として使用しないでください。最後の結果を保持するために使用されます。)

 

または、返されたタプルにインデックスを付けます。

keep_this = f()[1]
于 2013-03-24T19:50:49.337 に答える
3
def f():
    return 1,2,3

ここでf()は、タプルを返す(1,2,3)ので、次のようなことができます。

a = f()[0]
print a
1

a = f()[1]
print a
2

a = f()[2]
print a
3
于 2013-03-24T19:59:44.303 に答える
1

この行で行っているのreturn a,b,cは、を作成しtupleてから関数から返すことです。したがって、タプル分解を使用して、結果から必要な値のみを取得できます。例:

def f(x):
    return x, x + 1, x + 2
_, b, _ = f(0)
print(b) # prints "1"
于 2013-03-24T19:52:39.693 に答える