本文へスキップ
BecomeCoder

Pythonコース · 第5章 関数 ― 処理に名前をつけてまとめる · レッスン20

デフォルト引数とキーワード引数

ブラウザで完結

導入

引数には初期値(デフォルト)を設定できます。また、呼び出すときに名前を指定して渡すキーワード引数も使えます。

説明

引数に =値 を付けると、渡さなかったときの初期値になります。

def greet(name, greeting="こんにちは"):
    print(f"{greeting}{name}さん")

greet("太郎")                    # こんにちは、太郎さん(初期値を使用)
greet("花子", "おはよう")         # おはよう、花子さん(上書き)

呼び出すときに 名前=値 と書くと、順番を気にせず、意味の分かる形で渡せます(キーワード引数)。

def profile(name, age, city):
    print(f"{name}{age}歳・{city})")

profile(name="太郎", city="東京", age=25)   # 順番が違ってもOK

デフォルト引数のおかげで、よく使う値は省略でき、必要なときだけ上書きできます。

やってみよう

greetgreeting を指定して呼んだり、省略して呼んだりして、違いを確かめましょう。

演習

price と、初期値 1count を引数に取り、price * count を返す関数 total を定義してください。total(120, count=3) を表示すると 360 になります。

ヒント1を見る

def total(price, count=1): return price * count

実際に動かしてみよう

下のエディタにPythonを書いて「実行」を押すと、ブラウザ内のPythonで出力が表示されます。本文の例をそのまま試したり、書き換えたりしてみましょう(input() を使う回は「標準入力」欄に値を入れてから実行します)。

Python — ブラウザ内で実行

ブラウザ内でPythonを動かす環境(Skulpt)を読み込みます(初回のみ少し時間がかかります)。
スクロールして表示された時点でも自動で読み込まれます。