広告スペース(バナー)
🐍Python レッスン
基本文法の基礎8
データ構造とオブジェクト指向8
構文の基本を深める9
関数とデータ構造の応用9
アルゴリズムとテストの基礎8
文字列・数値操作の応用8
実務で役立つ機能8
アルゴリズム練習問題10
レッスン 27 / 69

デフォルト引数(引数の初期値)

このレッスンでは、Pythonのデフォルト引数の書き方を学び、引数が省略されたときの初期値を設定できるようになることを目標にします。「Python デフォルト引数 使い方」で調べている方向けの内容です。

関数の引数に= 値を書いておくと、呼び出し側がその引数を省略したときに自動で使われる「初期値」を設定できます。「注文書に何も書かなければ、いつもの定番セットになる」ようなイメージです。省略時のチェックを関数内に毎回書かずに済むため、呼び出す側にとってもシンプルで扱いやすい関数を設計できます。

サンプルコードでは、def greet(name="ゲスト"):という関数を定義し、greet("たろう")のように引数を渡した場合はその値が、greet()のように引数を省略した場合は"ゲスト"という初期値が使われています。

初心者がよくつまずくのが、複数の引数にデフォルト値を設定する場合、値を持たない引数を先に並べる必要がある点です。def f(a, b="x", c):のようにデフォルト値のない引数がデフォルト値のある引数の後に来ると、構文エラーになってしまいます。またリストや辞書をデフォルト値にすると、意図しない挙動になる有名な落とし穴もあるので注意しましょう。

実際の開発現場では、設定値の一部だけを変更できるようにしたい関数や、オプション機能を持つ関数を設計するときにデフォルト引数がよく使われます。使いやすいAPIを設計するうえで欠かせないテクニックの1つです。

Python
OUTPUT / 実行結果

💡 初回実行時はPythonエンジンの読み込みに数秒かかります。

🎯
ここまでできればゴール達成!
一部の設定を省略できる、使いやすい関数が作れるようになります。
広告スペース(バナー)
広告スペース(記事内)