この記事は「うずら」とAIが協力して作成しました。
なるべく正確さを心がけていますが、最新の公式ドキュメントなどもあわせて確認してみてね!
1-8. 呪文をひとつにまとめる魔法:「関数(def)」の基礎
皆様、こんにちは。技術講師のうずらです。
今回は、プログラミングにおいて非常に重要な「関数」という概念について解説いたします。関数を理解すると、書いたプログラムがとても整理され、効率的になります。
この記事は「うずら」とAIが協力して作成しました。
なるべく正確さを心がけていますが、最新の公式ドキュメントなどもあわせて確認してみてね!
皆様、こんにちは。技術講師のうずらです。
今回は、プログラミングにおいて非常に重要な「関数」という概念について解説いたします。関数を理解すると、書いたプログラムがとても整理され、効率的になります。
繰り返し実行する一連の処理に名前をつけ、必要なときにいつでも呼び出せるようにする仕組みが関数です。これにより、コードが整理され、間違いが減ります。
プログラムを作成していると、同じような処理を何度も書く場面が出てきます。
例えば、お客様へのメッセージを複数回表示する場合を考えてみましょう。
print("今日の天気は晴れです。") print("お出かけ日和ですね。") print("良い一日をお過ごしくださいませ。") print("明日も天気は晴れのようです。") print("洗濯物がよく乾きそうですね。") print("良い一日をお過ごしくださいませ。")
このコードでは、「良い一日をお過ごしくださいませ。」というメッセージが何度も出てきています。
このように、全く同じ、あるいは似たようなコードを繰り返し記述すると、コードが長くなり、修正が必要になった場合に複数の箇所を直さなければなりません。これは間違いの元になりやすいです。
Pythonでは、defキーワードを使って一連の処理をひとつの「関数」としてまとめることができます。
関数は、特定の役割を持つ「自作コマンド」のようなものです。
def say_good_day(): print("良い一日をお過ごしくださいませ。")
def の後に続く say_good_day が関数の名前です。関数名は、その関数が何をするのかを分かりやすく示すように名付けることが大切です。
定義した関数は、その名前を使って呼び出すことで実行できます。
def say_good_day(): print("良い一日をお過ごしくださいませ。") print("今日の天気は晴れです。") print("お出かけ日和ですね。") say_good_day() # 関数を呼び出します print("明日も天気は晴れのようです。") print("洗濯物がよく乾きそうですね。") say_good_day() # もう一度呼び出します
コードが簡潔になり、もし「良い一日をお過ごしくださいませ。」というメッセージを変更したくなった場合でも、say_good_day関数の中身を一箇所修正するだけで済むため、とても便利です。
関数には、「引数」という情報を受け渡すことができます。
引数を使うと、同じ関数でも渡す情報によって異なる動作をさせられます。
例えば、誰かに挨拶する関数を考えてみましょう。
def greet(name): # name が引数です print(f"こんにちは、{name}さん!") print("良い一日をお過ごしくださいませ。") greet("うずら") # 「うずら」を引数として渡します greet("読者") # 「読者」を引数として渡します
f"こんにちは、{name}さん!" のような書き方は「f-string(f文字列)」と呼ばれ、文字列の中に変数の値を埋め込むときに便利です。Python 3.6以降で利用できます。
このように、greet("うずら")と呼び出すと、関数内のnameには"うずら"が代入され、それぞれのメッセージが表示されます。
関数は、処理の結果を呼び出し元に「戻り値」として返すことができます。
戻り値は、returnキーワードを使って指定します。
def add(a, b): # aとbを引数として受け取ります result = a + b return result # 計算結果を返します number1 = 10 number2 = 5 sum_result = add(number1, number2) # add関数を呼び出し、戻り値を受け取ります print(f"{number1}と{number2}を足すと、{sum_result}になります。")
この例では、add関数がaとbを足し合わせた結果を返し、その結果をsum_resultという変数で受け取っています。
戻り値を受け取らない場合は、return文を省略することもできます。
記憶の箱「変数」の正体で学習した変数と組み合わせることで、さらに柔軟なプログラムが作成できます。
今回は、コードを整理し、再利用可能な形にする「関数」について学習いたしました。
関数を使いこなすことで、大規模なプログラムも管理しやすくなります。
しかし、プログラミング学習では、思い通りに動かないこともよくあります。
次回の記事「1-9. 冒険者の心得:エラーメッセージの読み方とデバッグの基本」では、そんな時に役立つエラーの読み方とデバッグの方法を解説いたします。どうぞお楽しみにしてください。
エラーと仲良く
最後まで読んでくれてありがとう!🌱
ノートみたいに、いつでも見返してね。