2013-03-24 6 views

答えて

21

あなたは、いくつかのダミー変数に返されたタプルを解凍することができます:それは、明らかに使用されていないだけで何か_である必要はありません

_, keep_this, _ = f() 

(対話インタプリタにダミーの名前として_使用しないでください、そこは最後の結果を保持するために使用されます。)また

 

、インデックス返さタプル:

keep_this = f()[1] 
+1

は数秒でそれを私にビート!ああ! – feralin

+0

ダミー変数のドキュメントが見つかりません。どんな助け? – Cupitor

+1

@ Naji基本的には、コードは3つの変数にタプルの3つの部分を割り当てます。単一のアンダースコアは有効な変数名であり、1回の構造化割り当てで複数回割り当てることができます。その割り当てが完了すると、タプルの中の値に等しいkeep_thisと(もし正しいとすれば)タプルの最後の値と等しい_の2つの変数があります。あなたは、より多くを学ぶために、構造の割り当てを調べるべきです。 – feralin

1

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

def f(x): 
    return x, x + 1, x + 2 
_, b, _ = f(0) 
print(b) # prints "1" 
+0

副次的な質問として、コードはすべて1行になっているのはなぜですか?私はいくつかの行にそれを入力しました... – feralin

+0

あなたは何とか[SOH](http://en.wikipedia.org/wiki/Start-of-Header#SOH)(0x01、CTRL-A)文字をそこに置くことができました。 –

+0

どのように私はそれを行うことができたか分からない! – feralin

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 
関連する問題

 関連する問題