Python | 高階関数の使い方

2021年5月27日

公開日:2021/5/27

Pythonでは,関数を変数や,他の関数の引数や返り値として扱うこともできる.このような関数を高階関数と呼ぶ.以下に高階関数を用いた構文を記載する.

◆実施環境

Python 3.8.8

■高階関数を変数として利用

高階関数を引数として利用する際,関数名をそのまま記載する.呼び出すときには,"()"をつける.

# 1の処理(関数名"greeting1")
def greeting1():
  print('good morning')

x = greeting1
x()

# 2の処理(関数名"greeting2")
def greeting2():
  print('good afternoon')

list = ['a',1,2,greeting2]
list[3]()

■実行結果

# 1の結果
good morning

# 2の結果
good afternoon

■高階関数を引数や戻り値として利用

# 1の処理
def greeting1(func):
  func('good morning')

def greeting2(n):
  print(f'{n}, Tom')

greeting1(greeting2)

# 2の処理
def greeting1():
  return greeting3

def greeting3():
  print('good evening')

x = greeting1()
x()

# 3の処理
def greeting1(func):
  func('good morning')
  return greeting3

def greeting2(n):
  print(f'{n}, Tom')

def greeting3():
  print('good evening')

x = greeting1(greeting2)
x()

■実行結果

# 1の結果
good morning, Tom

# 2の結果
good evening

# 3の結果
good morning, Tom
good evening

以上

Python高階関数

Posted by クマガイ