関数入門
関数は引数で原料を入れると、何らかの処理を行って戻り値として出来上がったものを吐き出してくれる便利な処理装置のようなものです。
def 関数名(引数1, 引数2, …):
[インデント]処理
[インデント]return 戻り値
Python で関数を定義する時、キーワードdefが関数定義の始まりです。 続けて関数名、そして丸括弧内に仮引数を記述します。
関数の本体はインデントを利用してブロックにします。
関数がなんらかの値を返す場合、return文で戻り値を指定します。
関数の呼び出しは関数名と丸括弧内に実引数を記述します。
引数について
引数は関数に対して、値を渡すことができます。関数内に外部からデータを渡すことができる便利な仕組みです。
呼び出し側の引数を「実引数(argument)」、関数定義側の引数を「仮引数(parameter)」といいます。
引数には位置を指定したり、キーワードを指定したり、デフォルトの値を指定したりすることができます。
引数の詳細は別途説明します。
戻り値
戻り値は返り値とも言われます。
戻り値は、結果を出力するもので、return の後に結果を記述します。
複数の戻り値が必要な場合は、リスト型、タプル型、辞書型にして戻します。
タプルの場合は、戻り値をカンマ区切りで return すれば良いです。
戻り値がない関数も多くあります。このような場合 return文は省略します。
return文を省略した場合は None が戻り値になります。
関数の呼び出し
関数の呼び出しは関数名と丸括弧内に実引数を記述します。
関数定義と呼び出しの実例
# ドルの円換算 return文のある例 def doll_to_yen(doll, rate): yen = doll * rate return yen yen = doll_to_yen(100, 105) print('為替レート:{}'.format(105)) print('{}ドルは{}円です。'.format(100,yen))
結果
為替レート:105
100ドルは10500円です。
def doll_to_yen3(doll, rate): yen = doll * rate result = doll_to_yen3(100, 105) print(result) 結果 None # ドルの円換算 return文の無い例 def doll_to_yen2(doll, rate): yen = doll * rate print('{}ドルは{}円'.format(100,yen)) doll_to_yen2(100, 105)
結果
100ドルは10500円
# 複数の戻り値の例 def myfunc(a,b,c): d = a + b + c return a,b,c,d result = myfunc(1,2,3) print(result)
結果
(1, 2, 3, 6)
参考になった書籍
プログラミングを少しでも経験がありPython の文法を学習する場合は、「入門 Python 3」が良いと思います。長く使えます。
「退屈なことはPython にやらせよう」はオブジェクト指向の解説がないです。代わりにPythonを使った便利な実例が初心者には嬉しい内容です。正規表現から、簡単なスクレイピング 、画像操作などあります。ただし、中級者以上には少し物足りないかもしれません。
Pythonサンプルのダウンロード
ここでダウンロードする「function1.ipynb」ファイルは、このPython動画で使用したものです。
Python入門一覧
- Python入門 クラスの継承とオーバーライド(動画あり)
- Python入門 オブジェクト指向について、クラスの作り方(動画あり)
- Python入門 lambda関数の使い方、map関数の使い方(動画あり)
- Python入門 位置引数、キーワード引数、デフォルト引数、便利な引数の使い方(動画あり)
- Python入門 グローバル変数とローカル変数(動画あり)
- Python入門 モジュールのインポートとrandomモジュール(動画あり)
- Python入門 関数の定義方法(動画あり)
- Python入門 内包表記(動画あり)
- Python入門 zip関数(動画あり)
- Python入門 for in文の活用(動画あり)
- Python入門 for in文の基本(動画あり)
- Python入門 三項演算子(動画あり)
- Python入門 if文の使い方2 while文の使い方(動画あり)
- Python入門 if文の使い方(動画あり)
- Python入門 浅いコピーと深いコピー(動画あり)
- Python入門 参照渡し(動画あり)
- Python入門 集合(動画あり)
- Python 入門 辞書(動画あり)
- Python 入門 タプルについて(動画あり)
- Python入門 リストのメソッド(動画あり)
- Python入門 リストのスライス(動画あり)
- Python入門 リスト
- Python入門 BMI課題 (動画あり)
- Python入門 文字列の連結とフォーマット1(動画あり)
- Python入門 文字列のフォーマット2(動画あり)
- Python入門 エスケープと型変換とinput()の使い方(動画あり)
- Python入門 pep8(動画あり)
- Python入門 変数の練習(動画あり)
- Python入門 変数(動画あり)
- Python入門 文字列(動画あり)
- Python入門 演算子(動画あり)
- Python入門 Python をはじめよう! (動画あり)