同じ処理
次のプログラムは、リスト、タプル、辞書の税抜価格から税込価格に計算しています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
price_list = [100,200,180,380] price_tuple = (500,80,680) price_dic = {"洗濯機":48000,"冷蔵庫":38000,"エアコン":62000} for price in price_list: price_t = int(price * 1.1) print(price_t) for price in price_tuple: price_t = int(price * 1.1) print(price_t) for key,price in price_dic.items(): price_t = int(price * 1.1) print(key + ":" + str(price_t)) |
【実行結果】
6,10,14行目で消費税計算を行っています。
6 |
price_t = int(price * 1.1) |
10 |
price_t = int(price * 1.1) |
14 |
price_t = int(price * 1.1) |
もし消費税率や計算方法などが変更になったら6、10、14行目を修正する必要があります。まだ3か所なら対応できそうですが、もっと多ければ間違える恐れがあります。これを解消するのが関数です。
関数
関数は特定の機能を定義/実行できるものです。上記の消費税計算を関数にし、計算処理を1か所にします(共通処理)。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
price_list = [100,200,180,380] price_tuple = (500,80,680) price_dic = {"洗濯機":48000,"冷蔵庫":38000,"エアコン":62000} def tax(price): result = int(price * 1.1) return result for price in price_list: price_t = tax(price) print(price_t) for price in price_tuple: price_t = tax(price) print(price_t) for key,price in price_dic.items(): price_t = tax(price) print(key + ":" + str(price_t)) |
消費税計算を関数定義しているのが5~7行目です。
5 6 7 |
def tax(price): result = int(price * 1.1) return result |
5行目のdefが関数定義開始の宣言です。次のtaxが関数名で自由に名前をつけれます。そしてかっこ()内に引数を受け取る変数(price)を定義します。引数とは関数を呼び出す側から引き渡される値です。
7行目のreturnが関数の呼び出し元へ戻る命令です。右側の値が戻す値(戻り値)になります。
呼び出し側
関数を呼び出しているのが10、14、18行目です。
1 |
price_t = tax(price) |
tax部分で関数を呼び出しています。そして、かっこ()に引き渡す値(引数)を記述しています(price)。
この値を基に関数では消費税の計算が行われます。関数の処理が終了すると値が返ってくる(戻り値)ので、変数price_tに保存しています。
次回からより詳しく紹介していきます。