White scenery @showyou, hatena

If you have any comments, you may also send twitter @shsub or @showyou.

disモジュールで「関数の引数に渡す配列の簡単な展開方法」を調べた

python

def hoge(x,y,z):
  print x,y,z

xs = [ 1, 2, 3 ]

とかあるときにhogeのx,y,zに1,2,3と渡してあげたい。

このとき、馬鹿正直に

hoge(xs[0],xs[1],xs[2])

とか書いてた。

これ、もうちょっと楽にかけないかなぁ?とか思って聞いてみたところ、こうやればいいとの答えが。(thx @nishio)

hoge(*xs)

これてっきりCでいうポインタとして引数リストにでも渡されてるのかと思ったのだけど、そうでもなくてただ単に特別な演算子っぽい。

[Python]アスタリスクによるシーケンスの展開
http://d.hatena.ne.jp/mono-hate/20080901/1220268174