【Python入門⑤】関数

ガチ理系のための共テ情報 – 最小限のPython入門

関数は,特定の処理を行うための命令群をまとめ,名前をつけたもので,コードの再利用性を高め,複雑なプログラムを簡潔にするために用いられる.関数を使用することで,コードの重複を避け,効率的なプログラムを作成できる.

関数の定義

関数の定義には, def キーワードを用い,関数名,引数,処理内容を記述する.関数名は,変数と同様の命名規則に従って付ける.

def 関数名(引数1, 引数2, ...):  # 引数はなくてもよい
# 関数の処理
return 戻り値 # 戻り値は必要なければ省略可能

関数の呼び出し

関数を定義した後,具体的な値を引数として渡し,その処理を実行する.

関数名(引数1に渡す値, 引数2に渡す値, ...)
### 引数に与えられた名前を用いて挨拶を行う関数を定義し,"太郎" という引数で呼び出す.

def greet(name):
    print("こんにちは," + name + "!")

greet("太郎")    # 出力:こんにちは太郎!

関数の引数

関数の引数とは,関数に渡される変数または値のことである.これにより,同じ処理を異なるデータで繰り返すことができる.なお,決まった操作を行うだけの,引数を取らない関数も定義可能である.

# 2つの引数を持つ関数の例

def syoukai(namae, nenrei):
    print(namae+"さんは"+str(nenrei)+"才です.")

syoukai("くにごろう", 17)  # 出力:くにごろうさんは17才です.
# namaeに"くにごろう"が,"nenrei"に15が代入され,関数が呼び出された.
# 引数を持たない関数の例

def hello_world():
    print("Hello, World!")
    print("こんにちは,世界!")

hello_world()

関数の戻り値

関数は処理結果を return 文を用いて呼び出し元に返すことができる.戻り値がない場合もある(処理の結果を直接表示したり,何かの状態を変更したりする目的で使用されることが多い).

### 関数の戻り値を利用する例

def multiply(x, y):  # 2つの数値の積を返す関数を定義
    return x * y

# 関数の戻り値を変数に代入して利用する
result = multiply(4, 5)
print(result)  # 出力: 20

# 戻り値を他の関数の引数として直接使用する
print(multiply(3, 3))  # 出力: 9

※ すでに扱ってきたprint(), input(), type(), int(), float(), str()などは,Pythonで定義済みの関数で,組み込み関数と呼ばれる.
※ キーワード引数:引数名を指定して値を渡すことができる.これにより,引数の順序を変更することが可能である.
※ デフォルト引数:関数定義時にパラメータの初期値を設定することができる.呼び出し時に対応する引数が提供されない場合,このデフォルト値が使われる.
※ 複数の戻り値を返す関数を定義することもできる(タプルを使う).