今回は、任意の数の引数を受け取る場合の関数について説明します。
この、「任意の数の引数を受け取る」仕組みは、「可変長引数」と言います。
引数を可変長引数にするには、関数定義の引数名の前に「*」(アスタリクス)を付けます。
定義としては以下のようにします。
def funcExam(*number):
この関数を呼び出すには、
funcExam(4, 5, 6)
funcExam(7, 8, 9, 10)
と記述します。
ひとつ例をみてみましょう。
def func_print(*number):
for n in number:
print(n)
func_print(1, 2, 3, 4)
可変長引数のnumberから順番に値を取り出してnに格納して、print文で表示させています。
結果は、
1
2
3
4
となります。
もうひとつ例を見ましょう。
def allSum(*number):
sum = 0
for n in number:
sum += n
return sum
num = allSum(1, 2, 3, 4, 5)
print(num)
これは引数の総和を求める関数です。
numberからひとつずつ取り出してnに入れ、sumという変数に加算していってます。
最後にreturn で sum を返しています。
これを実行すると、
15
と表示されます。