2012-04-12 23 views
2

私はまた、(自己を含む)10個の合計引数を必要とするクラスを有する効率的な方法(パイソン)

x = (1, 2, 3, 4, 5, 6, 7, 8, 9) 

のタプルを返す機能を有する

私が欲しいですクラスの引数を移入することができるようにするタプルが、私はちょうどそれがエラーに

を返し

y = Class(x) 

を置く場合

私はそれだけで

y = Class(x[0], x[1], ... x[8]) 

を使用することも可能である知っているが、それはとても長いったらしいようです。これを行うにはもっと良い方法がありますか?

答えて

6

にアスタリスクを使用してくださいあなたはそれをunpackする必要があります。

>>> def foo(a, b, c, d, e, f, g, h, i, j): 
...  return a 
... 
>>> x = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) 
>>> foo(*x) 
1 
+1

私はこれが 'スプラット' 演算子たくさん呼び出されます参照してください。役に立つもの。 –