Python | 関数の定義と実行の基本形

Python, Python 関数

Pythonでの関数の定義と実行の基本形

このページはPythonでの基本的な関数の定義と実行の書き方をまとめています。

Pythonでの関数の定義と実行

Pythonで関数の定義する基本形

def 関数名():
    # 処理部分

関数の実行

関数名()

Pythonで関数を使う時のポイント

  • defを使って関数を定義する
  • オプション引数はカンマ区切り
  • 関数側でオプション引数のデフォルト値を指定していなく、呼び出し側でも付与していない場合はエラー(exceptions.TypeError)となる
  • 関数内での変数参照の優先順序は変数参照は、ローカルシンボルテーブル、囲んでいる関数のローカルシンボルテーブル、グローバルシンボルテーブル、最後に組み込み名のテーブル

簡単な関数の定義と実行のサンプルコード

一番シンプルな簡単な関数の定義と実行のサンプルコードになります。

def test_function():
    print('関数test_functionを実行しました')

test_function()

# 関数test_functionを実行しました

関数の実行にオプション引数を扱う場合

関数の実行にオプションの引数を扱う場合は、関数定義側の()内に引数名をカンマ区切りで記述していきます。

関数側でオプション引数のデフォルト値が定義されていない場合、呼び出し側でオプション引数が付与されていない場合は仮にその引数が関数内で利用されていなくてエラーとなります。

def sum_function(num1,num2):
    sum = num1 + num2
    print('合計は' + str(sum) + 'です')

sum_function(5,10)
# nは15です

オプション引数にデフォルトの値を定義する

exceptions.TypeError「takes exactly ~ arguments」を回避する為にも、用途によってはオプション引数にデフォルトの値は定義しておいた方が良いかもしれません。

デフォルト値は「=」で定義していきます。

次のサンプルコードの場合、2つの値の合計値を求める関数になるのでデフォルト値は0にしてあります。

def sum_function(num1=0,num2=0):
    sum = num1 + num2
    print('合計は' + str(sum) + 'です')

sum_function()
# nは0です

文字列の場合は空の値、リストや辞書などの配列の場合も空のリストなどを定義しておいても大丈夫でした。

また、=Noneも使えるようです。

Python, Python 関数

Posted by Yousuke.U