プログラミング言語pythonにおける関数についてプログラミング初心者向けに丁寧に解説していきます。
関数を使えば、様々な処理を1つにまとめることができます。
関数はプログラミングの中でも非常に重要なので必ず理解しておきましょう。
本記事では、pythonの関数の基礎(関数とは何か)、関数の定義の方法、呼び出し、引数や戻り値について、具体的なソースコードで解説していきます。
ぜひ最後まで読んで、pythonの関数の基本を理解してください。
公開日:2017年2月17日
python 関数とは?
まずはpythonにおける関数とは何かについて解説します。
例えば、電子レンジを考えてみます。
電子レンジの機能としては、大まかに
1:温めたいものを入れて、何分間温めるか指定する
2:電子レンジが入れたものを温める
3:指定した時間になったら温めるのをやめる
という流れになっていますね。
電子レンジのように、様々な処理が機能として1つにまとまっているものをプログラミングでは関数といいます。
プログラミングでは、関数を使って(呼び出すといいます)、関数が持っている様々な機能を使っていきます。
\文字より動画で学びたいあなたへ/
Udemyで講座を探す >python 関数の定義の仕方
関数を作成する(定義する)時は、以下のようにソースコードを記述します。
1 2 3 4 |
def 関数名(): 処理1 処理2 ・・・・・ |
defとは、英語のdefine(定義する)の略からきています。
関数名は自由につけることができますが、その関数がどんな処理をする関数なのかがわかるような関数名にすることを心がけましょう!
python 関数の呼び出し
では、実際に関数を作って(定義して)その関数を使ってみましょう。
関数を使うことを「関数を呼び出す」というので覚えておきましょう。
本記事では、microwave(電子レンジ)という関数を定義して関数を呼び出してみます。
1 2 3 4 5 6 7 |
def microwave(): print("時間を指定します") print("温めます") print("温めるのをやめます") ・・・ >>> >>>microwave() |
【出力結果】
1 2 3 |
時間を指定します 温めます 温めるのをやめます |
関数の呼び出し方は非常にシンプルで、呼び出したい関数の後に()を書くだけです。
上記のソースコードでは、7行目でmicrowaveという関数を呼び出していることがわかります。
関数を呼び出すと、関数で定義した処理が実行できていることが確認できますね。
関数を定義すれば、あとは関数を呼び出すだけで複数の処理を何度も実行することができて非常に便利です。
複数の処理を何度も使う時は、関数にまとめることによってソースコードの量が少なくなり、読みやすいプログラムになります。
python 関数における引数
電子レンジでは、解凍や「700ワット」、「500ワット」など、温めるためのモードがあるかと思います。
関数では、モードに応じて処理を変更するようにすることができます。説明だけだとわかりにくいと思うので、ソースコードをまずは見てみましょう。
1 2 3 4 5 6 7 8 9 10 |
def microwave(mode): if (mode == "解凍"): print("解凍モードで温めます") elif(mode == "700ワット"): print("700ワットで温めます") else: print("500ワットで温めます") ・・・ >>> >>>microwave("解凍") |
※pythonの「if」がわからない人は、python if文について解説した記事をご覧ください。
【出力結果】
1 |
解凍モードで温めます |
関数には、引数という概念があります。
引数とは、上記のソースコードのように、関数を呼び出すとき(10行目)にデータ(今回は「”解凍”」)を渡すことのできる仕組みのことです。
上記のソースコードでは、1行目で
1 |
def microwave(mode): |
としています。このmicrowaveという関数が呼び出されるときに渡されてくるデータを入れる変数が「mode」です。
今回は、ソースコード10行目で
1 |
microwave("解凍") |
としてmicrowave関数を呼び出しているので、引数にある「”解凍”」が変数modeに代入されます。
そして、if文により、「mode」が「”解凍”」の時に実行される処理が出力されたということです。
引数は関数の学習の中でも特に重要なので、ぜひ繰り返し読んで、引数を理解してください。
python 関数における戻り値
最後に、関数における戻り値について解説します。
戻り値とは、簡単に説明すると、データを返してくれることです。
例えば、円の面積を計算するプログラム(関数)を考えてみます。
※円の面積は半径×半径×3.14で求めることができます。
1 2 3 4 5 6 |
def circleArea(radius): result = radius * radius * 3.14 return result ・・・ >>> >>>circleArea(10) |
【出力結果】
1 |
314.0 |
まず、circleArea関数の引数をradius(英語で半径という意味)としています。
ソースコード2行目で得られた円の面積をresultという変数に代入しています。
そして、関数を呼び出してみると、「314.0」という出力結果になりました。
ソースコード3行目にある「return」とは、「返す・戻す」という意味で、関数を呼び出した時にreturnの右に記述したデータを返す(戻す)という役割があります。
returnを使えば、上記のソースコードのように出力結果として表示させるだけでなく、帰ってきたデータを変数に代入することもできます。以下のソースコードをご覧ください。
1 2 3 4 5 6 |
>>>smallArea = circleArea(5) >>>bigArea = circleArea(10) >>>print(smallArea) 78.5 >>>print(bigArea) 314.0 |
ソースコードの1行目と2行目で、radius(半径)が5の円の面積をsmallAreaという変数に、radius(半径)が10の円の面積をbigAreaという変数に代入することができています。
戻り値の使い方のイメージができましたか?
戻り値も引数と同じく関数では重要なので必ず理解しておきましょう!
いかがでしたか?
プログラミング言語pythonにおける関数の基本が理解できましたか?
関数の定義の仕方と呼び出し方、関数における引数や戻り値はどれも関数の基本なので、必ず理解しておきましょう!
現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル
現役シリコンバレーエンジニアが教えるPython入門!応用では、データ解析、データーベース、ネットワーク、暗号化、並列化、テスト、インフラ自動化、キューイングシステム、非同期処理など盛り沢山の内容です!
\無料でプレビューをチェック!/
講座を見てみる評価:★★★★★
pythonの王道のコードを学べただけでなく、さまざまなライブラリの使い方を知ることができました。
評価:★★★★★
一つ一つの項目が必要十分な単位でまとめられているため、後ほど再度学習したい場合に便利です。
最新情報・キャンペーン情報発信中