第10章 便利な関数を使おう

10.1 使うと便利な関数たち

 テキストを通じて学んできたprint関数やrange関数ような様々な関数を使いこなせるようになると、プログラミングをさらに簡単に行えるようになります。まずは、関数とは何かから学習していきましょう。

10.1.1 関数について知ろう

関数(かんすう)」とは、すごく簡単に言うと「ある処理をひとまとめにしたもの」です。
 Pythonのプログラムに限った話ではありませんが、プログラムの世界では様々な処理を行って機能を実現していきます。作成する機能が複雑になるほど、プログラムの規模も当然大きくなっていきます。このような場合、似たような処理を色々な所で行わないといけなくなり、そのために似たような処理を何回も記述することになってしまいます。
 しかし、似たような処理を関数という形でまとめておくと、それを好きなときに呼び出し何度でも利用することができます。関数のメリットには以下のようなものがあります。

関数のメリット
・関数を用意しておくといつでも利用でき、さらに他の場所でも再利用が可能になる。
・プログラムの記述量が減らせ、ソースコードが見やすくなる。
・処理をひとまとめにしているので、その部分的な処理に対して動作確認や修正が効率よく行える。

関数とは使う側にとって、中身の分からないブラックボックスのようなものです。

図 10.1.1.1:関数はブラックボックス

  関数には情報を与えることができます。(情報を入力する)
  関数は受け取った情報(①)を元に内部で処理を行います。
  関数は内部の処理(②)の結果を返します。(情報を出力する)

 図のように中身の仕組みがどのようなものになっていても、使い方にならって情報を与えると、目的の結果を得ることができます。

 プログラムの関数ではありませんが、私達も日常的に内部の仕組みは知らないけど利用している物がたくさんあります。プログラムを作成するためのパソコンや、テレビ、車、エレベータ、ATM、etc…です。

 では、とてもイメージしやすい自動販売機を例にしてみましょう。自動販売機にお金を入れてジュースを選択すると、選択したジュースが出てきます。私達は自動販売機の中の仕組みが、どのようになっているのかは知らずに利用できます。

図 10.1.1.2: 自動販売機を関数に見立てる

 自動販売機に「お金」と「選択したジュース」を情報として与えると、結果として「目的のジュース」を得ることができます。自動販売機の例えのように関数にも利用方法が決まっており、それに従えば必ず結果を得ることができる便利な物なのです。

10.1.2 関数の分類

 関数は、「組み込み関数」と「ユーザー定義関数」に分類することができます。
 組み込み関数とは、Pythonが初めから備えている関数のことをいいます。また、関数はユーザー自身で新たに作成することができ、それをユーザー定義関数と呼んでいます。

図 10.1.2.1: 関数の分類

 組み込み関数は、プログラムを作成する上で大変便利で、基本的な処理から応用的な処理まで色々なものが用意されています。例えば文字列の操作(文字置換)、配列の操作(並び替え)、ファイル情報の操作(入出力)などがあります。プログラムを開発する場合は、既に用意されている組み込み関数を利用したり、該当するものがなければユーザー定義関数を作ったりしながら、目的のアプリケーションを作り上げていきます。

 組み込み関数は次の節で詳しく説明していきますが、ユーザー定義関数に関しては「第12章 関数について」にて解説します。

ポイント

・関数は入力された情報を元に、内部で処理を行い、それに見合った結果を出力する。
・関数の分類には、用意されている組み込み関数と、自分で作るユーザー定義関数がある。


NEXT>> 10.2 組み込み関数の使い方