引数をタプルとして受け取る
入門Python3 4.7.4
関数を定義する時に引数の前に*をつけると引数をタプル化して受け取れるようになります。
def foo(*args): print(args) foo() foo("a","b","c")
$ py main.py () ('a', 'b', 'c')
これはCの可変長引数のような、もしくはC#のparamsキーワードのような機能ですね。
また通常の引数と混ぜて使うことも出来ます、ただしその場合タプル化できるのは最後の変数のみです。
def foo(a,b,c,*args): print(a,b,c) print(args) foo(1,2,3,"a","b","c")
$ py main.py 1 2 3 ('a', 'b', 'c')
ちなみにタプル化する変数名はPythonの慣習的にargsと名付けるのが一般的のようです。