関数もオブジェクト

入門Python3 4.7.7


Pythonすべてがオブジェクトなのでつまりそれは関数もオブジェクトであるってことだ。

なので関数自体、関数への引数として渡したりできる。

def foo():
    print("hello!")

def bar(func):
    func()

bar(foo)
$ py main.py
hello!

fooという関数オブジェクトをbarへ渡し受け取ったfunc変数でそれを呼ぶ。シンプルですね。