ロジカ式logo

はじめての
Python

ページ一覧に戻る
Lesson17-2 関数②
ロボた

自分で関数を作れたらもっと便利だよね!

関数を自分で作れるようになると、プログラムのコードがわかりやすくなったり、何度も同じプログラムを書かなくてもよくなるんだ!

ロボち
自分で関数を作ると…

基本型

 

関数 基本型2
ロボた

関数の名前の付け方は、変数と同じルールがあるよ!

defの後に関数名と引数を設定したら、その下にその関数で実行する処理をプログラミングしてね。

ロボち
ロボた

Pythonのプログラムは上から下へ順番に実行されるから、関数の定義は、その関数を使いたい場所より前の場所で定義しておいてね!

呼び出すときはこう書くよ!

ロボち
関数 基本型2

使い方の例

📝1
底辺と高さで三角形の面積を求める関数です。

EXAMPLE
def triangle_calc(base, height): ans = (base * height) / 2 return ans base = 10 height = 5 ans = triangle_calc(base, height) print(ans)
ロボた

triangle_calcという名前の関数を作ったよ。引数は2つあるね!
底辺の値が入ったbaseと高さが入ったheightだよ。

関数triangle_calcは、三角形の面積を計算して、その結果を戻り値として返すよ!

ロボち

📝2
「Hello!」を入力した回数分、繰り返し表示する関数です。

EXAMPLE
def show(str1, n): for i in range(n): print(str1) str1 = "Hello!" n = int(input()) show(str1, n)
ロボた

showという名前の関数を作ったよ!

引数は、表示したい文字である「Hello!」が入ったstr1と、回数が入ったnだよ!

ロボち
ロボた

関数showは、引数で受け取ったn回、str1の表示を繰り返す関数だよ!

input関数で入力したものは文字列になるから、int関数で数値に直しているよ!

ロボち

やってみよう

⌨️1
入力された3つの数の掛け算を行う関数を作り、結果を表示してください。

PRACTICE

📖 解答例と解説

def calc(num1, num2, num3):
    ans = num1 * num2 * num3
    return ans
num1 = int(input())
num2 = int(input())
num3 = int(input())
ans = calc(num1, num2, num3)
print(ans)
ロボた

入力された3つの数の掛け算を行う、calcという関数を作ったよ!

入力された数字、num1、num2、num3を引数として関数に送って、戻り値を変数ansに代入しているよ!

ロボち

⌨️2
入力された金額の税込価格(10%)を計算する関数を作り、結果を表示してください。

PRACTICE

📖 解答例と解説

def calc(price):
    ans = price * 1.1
    return ans
price = int(input())
ans = int(calc(price))
print(ans)
ロボた

入力された金額を引数として、引数に税込価格(10%)を計算し、結果を戻り値として返す関数を作ったよ!

戻り値は、int型(整数)に直されて、変数ansに代入されているね。

ロボち

⌨️3
繰り返したい文字列と回数をそれぞれ入力し、表示する関数を作ってください。

PRACTICE

📖 解答例と解説

def show(str1, n):
    for i in range(n):
        print(str1)
str1 = str(input())
n = int(input())
show(str1, n)
ロボた

繰り返したい文字列を変数str1に、回数を変数nにそれぞれ代入しているよ。

関数showでは、引数として与えられたstr1をn回表示させているよ。
戻り値はないね。

ロボち
ロボた

関数showに渡す引数の順番を、(n,str1)のように変えると上手く動かないよ。

なぜなのか、考えてみてね!

ロボち
POINT
  •   関数は自分で作ることができる。
  •   関数の名前の付け方にはルールがある。