Python では、リストを に変換するにはどうすればよい*args
ですか?
関数なので知っておく必要があります
scikits.timeseries.lib.reportlib.Report.__init__(*args)
として渡される time_series オブジェクトがいくつか必要ですが*args
、timeseries オブジェクトのリストがあります。
Python では、リストを に変換するにはどうすればよい*args
ですか?
関数なので知っておく必要があります
scikits.timeseries.lib.reportlib.Report.__init__(*args)
として渡される time_series オブジェクトがいくつか必要ですが*args
、timeseries オブジェクトのリストがあります。
*
iterable の前に演算子を使用して、関数呼び出し内で展開できます。例えば:
timeseries_list = [timeseries1 timeseries2 ...]
r = scikits.timeseries.lib.reportlib.Report(*timeseries_list)
*
(前に注意してくださいtimeseries_list
)
構文 *expression が関数呼び出しにある場合、expression は iterable に評価される必要があります。この iterable の要素は、追加の位置引数であるかのように扱われます。位置引数 x1, ..., xN があり、expression がシーケンス y1, ..., yM に評価される場合、これは M+N 個の位置引数 x1, ..., xN, y1, を指定した呼び出しと同等です。 ..yM.
これは、python チュートリアルのUnpacking argument lists**
というタイトルのセクションでも説明されており、演算子を使用してキーワード引数の辞書で同様のことを行う方法も示されています。
はい、 *arg を使用して引数を関数に渡すと、python は arg の値をアンパックして関数に渡します。
それで:
>>> def printer(*args):
print args
>>> printer(2,3,4)
(2, 3, 4)
>>> printer(*range(2, 5))
(2, 3, 4)
>>> printer(range(2, 5))
([2, 3, 4],)
>>>
*args
just は、関数が通常は同じ型のいくつかの引数を取ることを意味します。
詳細については、Python チュートリアルのこのセクションを参照してください。