Python 関数のサンプル

Pythonの関数のサンプルです。

確認環境
・Python 3.7.0

目次

関数

def 関数名(引数)
   処理
   return 式;
  • 関数は処理をまとめることができます。
  • 引数は関数にデータを渡します。パラメータとも言います。
  • 引数は必須ではありません。
  • returnは、関数の呼び出し元に値を返します。返す値を返り値または戻り値といいます。
  • returnは必須ではありません。
  • 以下はPython 3.6.3 ドキュメントのユーザー定義関数のリンクです。
    https://docs.python.jp/3/reference/compound_stmts.html?highlight=if#function-definitions 

引数なし、戻り値なしの関数のサンプル

6行目のtest1()が、3行目の関数を呼んでいます。
引数、戻り値ともにありません。

# coding: utf-8

def test1():
	print("テスト")

test1() # テストと表示される

引数がある関数のサンプル

6行目のtest2(2,3)が、3行目の関数を引数付きで呼んでいます。
4行目で計算した値をreturnで呼び出し元に返しています。8行目は5が表示されます。
→3行目の引数(aとb)を仮引数、6行目の引数を実引数といいます。

# coding: utf-8

def test2(a,b):
	return a + b

num = test2(2,3)

print (num) # 5を表示する

 

デフォルト引数がある関数

デフォルト引数は、関数の引数にデフォルト値が設定されています。関数を呼ぶ側は、引数を省略できます。
関数のデフォルト値がある引数の箇所に、関数を呼ぶ側で引数を設定すると、関数を呼ぶ側で設定した引数が優先されます。

コード

デフォルト引数がある関数のサンプルです。

3行目は、デフォルト引数を使用しています。
6行目は、引数を指定していませんがデフォルト引数の値で計算されてnumの値は6になります。

# coding: utf-8

def test3(a=1,b=2,c=3):
	return a + b + c

num = test3()

print (num) # 6を表示する

一部の引数にのみデフォルト引数を設定

デフォルト引数は、右の引数から順に指定します。
左端の引数に1つのみ指定することはできません。
以下は、右からcとbのみデフォルト引数としています。
6行目の引数の1は3行目のaにあたります。

# coding: utf-8

def test4(a,b=2,c=3):
	return a + b + c

num = test4(1)

print (num) # 6を表示する

関数を呼ぶ側でデフォルト値がある引数の箇所に引数を設定した場合

関数を呼ぶ側でデフォルト値がある引数の箇所に引数を設定した場合です。

6行目は、引数を2つ設定しています。
3行目は、3つの引数にデフォルト引数が設定されています。引数の値は、関数に設定した引数が優先されてaは5、bは6、cは3として計算されます。

# coding: utf-8

def test5(a=1,b=2,c=3):
	return a + b + c

num = test5(5,6)

print (num) # 14を表示する

関数の呼び出し時に引数名を指定する

関数の呼び出し時に引数名を指定することができます。
実引数が順番に並んでいなくても意図した仮引数に値を渡すことができます。

コード

6行目は、(b=1,a=8)というように引数名をイコール(=)を使用して指定しています。

# coding: utf-8

def testcalc(a,b):
	return a - b

num = testcalc(b=1,a=8)

print (num) # 7を表示する

関連の記事

Python if文のサンプル
Python for文とbreakとcontinueのサンプル
Python while文とdo…while文にあたる書き方のサンプル



△上に戻る