今回は関数です。
冒頭、今西先生から徐々に難しくなってくるとの説明を聞き
襟を正して講義を聞いています。
関数とはよくつかう計算などの機能をまとめたもの、だそうです。
自分で作ることもできるし、
他の人が作った関数を利用する事もできるそうです。
まずは関数を定義するときは定義を意味する
definitionの頭文字defからスタートします。
その後関数名と続きます。
def say_hello():
print('みなさん、こんにちは。')
say_hello()
みなさん、こんにちは。
結構かんたんです。
say_hello()
を呼び出すと何度でもつかえます。
上のコードを使ってもう少し高度な関数をつくります。
def say_hello2(name):
print(name + 'さん、こんにちは。')
say_hello2('鈴木')
鈴木さん、こんにちは。
このコードでは()内に名前を入力して関数を呼びだすと
その名前でこんにちはと出力されます。
この()内にいれる値を引数といいます。
ちなみにこのsay_hello2()は()内に値を入れずに実行すると
エラーになります。
このコードはもう少しスマートな感じで書き換えができます。
その名もフォーマット関数です。
def say_hello2(name):
print( '{}さん、こんにちは。'.format(name))
say_hello2('鈴木')
鈴木さん、こんにちは。
さきほどのコードと同じ出力結果になります。
つきは計算した値を返すような関数です。
例題として正方形の面積を求める関数をつくります。
そしてultに計算結果を入れます。
def calc_square(side):
return side*side
result = calc_square(10)
result
100
ここで今西先生から問題です。
問)三角形の面積を求める関数をつくる。
普通に三角形の面積を求める式を書くとこうなります。
base = 10
height = 20
area = base * height*0.5
print('面積:',area)
面積: 100.0
それを関数を使って書くとこうなります。
def calc_tri(base,height):
return base*height*0.5
calc_tri(10,1000)
5000.0
この引数を入れる関数ですが、前回同様()内に引数を
入れないと実行時にエラーがでます。
それを避けるために、予め初期値を入れることもできます。
こうすると引数を入れなくても、とりあえず初期値で計算をしてくれます。
def calc_tri(base=10,height=10):
return base*height*0.5
calc_tri()
50.0
コメント