1.関数(function)とは
関数とは「処理に名前をつけてまとめたもの」です。
メリットは3つ:
- 同じ処理を何度でも使い回せる
- コードがスッキリして読みやすい
- 修正が必要なときも1箇所直すだけでよい
2.関数の基本形(def)
Python の関数は def を使って定義します。
def 関数名():
処理
<例>
def hello():
print("こんにちは!")
hello() # 関数の呼び出し
3.引数(ひきすう)
引数とは、関数に渡す 材料 のこと。
def greet(name):
print(f"こんにちは、{name} さん")
greet("Alice")
greet("Bob")
結果:
こんにちは、Alice さん
こんにちは、Bob さん
4.戻り値(return)※関数の結果を返す
return を使うと、関数の結果を呼び出し元に返せます。
def add(a, b):
return a + b
result = add(3, 5)
print(result) # 8
ポイント:
- return に到達すると“そこで関数は終了”します
- 値を返さない場合、自動で None になります
5.デフォルト引数(初期値がある引数)
引数に 初期値 を設定できます。
def greet(name="ゲスト"):
print(f"こんにちは、{name} さん")
greet() # 引数なし → ゲスト
greet("Alice") # 引数あり → Alice
6.可変長引数(複数の値をまとめて受け取る)
✔ *args(複数の位置引数)
引数の個数を事前に指定せずとも任意の個数の引数を渡せるということ。
def total(*numbers):
return sum(numbers)
print(total(1, 2, 3, 4)) # 10
✔ **kwargs(名前つきの複数引数)
def info(**data):
print(data)
info(name="Alice", age=20)
結果:
{'name': 'Alice', 'age': 20}
7.関数のスコープ(変数の有効範囲)
関数内で定義した変数は 外から使えません。
def test():
x = 10 #変数xはtest内でしか使えない。
print(x)
test()
print(x) # エラー:xは関数の外に存在しない
8.実践例
✔ 割引価格を計算する関数
def price_after_discount(price, rate):
discount = price * rate
return price - discount
print(price_after_discount(1000, 0.2)) # 800
