
関数に関数を渡す。
関数から関数を返す。
任意の数のあらゆる型
の引数を処理。
引数のリストを処理する
myfunc
が完成しました。次のような前ページの呼び出しの例に対応できるかを確認し
てみましょう。
myfunc(10)
myfunc()
myfunc(10, 20, 30, 40, 50, 60, 70)
次は、
myfunc
が処理できることを確認する
IDLE
セッションです。いくつの引数を指
定しても(ゼロを含む)、
myfunc
はそれに応じて処理します。
10
章 関数デコレータ
you are here
391
指定する引数の数にかかわらず、
myfunc
は正しく動作します(つ
まり、引数の数にかかわらず処
理できます)。
引数を指定しないと、
myfunc
は何もしません。
引数の型がバラバラでも
myfunc
はきちんと処理します。
*
は呼び出し時にも使える
myfunc
に引数としてリストを指定すると、そのリストは(さまざまな型の値がある可
能性があるにもかかわらず)
1
つの項目(つまり、1 つのリスト)として扱われます。インタ
プリタにリストを展開してリストの要素それぞれを引数として渡すには、関数の呼び出し
時にリストの名前の前に
*
文字を付けます。
次の短い
IDLE
セッションは、
*
を使うとどのように異なるかを示しています。
リストは関数の
引数の
1
つとして
処理されます。
6
つの整数の
リスト
リストの前に
*
を付けると、
引数のリストに展開されます。