コース: プログラミングの基礎:基本

関数とは何かを知る

コース: プログラミングの基礎:基本

関数とは何かを知る

関数は、プログラムを読んだり、 書いたり、デバッグしたりすることを 容易にします。 関数とは、コードのブロックに 名前を付けて、パッケージ化したものです。 すべてのプログラミング言語の 核となる機能で、 言語によっては、 サブルーチン、メソッド、 その他の名前で呼ばれることもありますが、 すべて同じもの、つまり コードを分割する方法を指しています。 このコースでは、 これらを関数と呼ぶことにします。 実際、画面に何かを表示する print() や、 ユーザーからの応答を得る input() など、 このコースを通して、 いくつかの関数をすでに使っています。 Python には、他にもまだ、 何百と関数があります。 関数の重要な利点のひとつは、 同じ行を何度も書くことを 避けることができることです。 例えば、このように考えることができます。 公衆電話は、 最近めっきり姿を見なくなったので、 使い方を知らない人も多いようです。 そんな人に、電話のかけ方を教えるには、 手順をひとつずつ、 説明しなければなりません。 まず、受話器を取り外して手に取ります。 次に、効果を投入口に入れます。 そして、電話番号を押します。 これで、相手が出れば、通話ができます。 次に、「公衆電話で電話をかけましょう。」 と言ったら、 どうすればいいのかがわかりますね。 毎回手順を説明する必要はないのです。 関数も同じです。 コンピュータに一度だけ、 何かを教えれば、 それ以降は関数の名前を呼ぶだけで、 仕事ができるようになるのです。 何度も同じ文を繰り返す必要はありません。 では、実際にプログラムで 確認してみましょう。 ここでは、 「05_01_begin.py」を開きます。 これが、公衆電話のかけ方の コードだとしましょう。 公衆電話のかけ方を ひとつずつ順にリストアップしたものです。 関数がなければ、 公衆電話をかけるたびに、 このコードを何度も コピー&ペーストしなければなりません。 そこで、3行目から5行目までを コピーしてみましょう。 そして、それを下に貼り付けます。 1つ、2つ、 これでは何度も繰り返しているだけで、 コードがとても読みずらいですね。 とりあえずプログラムを実行して、 出力を確認してみましょう。 公衆電話の書き方が3回表示されましたが、 気が付きましたか? バグがあります。 効果の漢字が違いますね。 戻って修正する必要があります。 これが、何百行、何千行のコードがある プログラムだったら、 とても大変な作業になりますね。 もし、お金の「硬貨」と硬くなる「硬化」の 文字が混じっていたら、 VS Code の一括変換で、 直すこともできません。 関数があれば、このようなミスによる 面倒な作業を繰り返す必要はありません。 では、早速関数を作ってみましょう。 この関数を call_payphone と 呼ぶことにします。 構文については、 あまり気にしないでください。 関数の作り方は、これから説明します。 ただ、得られる利点に注目してください。 ではこの余分なコピー&ペーストを すべて削除します。 5行目の漢字のミスを 修正しておきましょう。 では、call_payphone を 呼び出すことにしましょう。 もう2、3回呼び出してみましょう。 ずっと読みやすく、 きれいなコードになりました。 ファイルを保存して、 コードを実行してみましょう。 これで、公衆電話のかけ方の 関数が完成しました。 コピー&ペーストするよりも ずっといいですね。 関数を活用する方法を 学びたいと思うことでしょう。 では、早速始めてみましょう。

目次