0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

pythonの"関数"でも、”関数"を引数として指定できる

Last updated at Posted at 2022-09-23

pythonの"関数"でも、”関数"を引数として指定できる

例として、下記の関数を微分してやりたいとします。

def f_ex(x):
    return 2*x

例えば、関数に”関数”を引数として指定しない場合、下のように書けますが、取り回しが非常に悪いです。

def diff_ex(x):
    h = 1e-4
    return (2*(x+h)-2*(x-h))/(2*h)

実行例

>>> diff_ex(8)
1.9999999999953388

そこで、関数に”関数”を引数として指定してやることで、簡単に処理を使い回すことができます。
代入したい関数の引数記述部()を省略してやることで、関数に”関数”を引数として指定できます。
例えば、下記のように、好きな関数を引数として指定し、微分する関数を作ることができます。

def diff_f(f, x):
    h = 1e-4
    return (f(x+h)-f(x-h))/(2*h)

実行例

>>> diff_f(f_ex, 8)
1.9999999999953388

参考・引用

0
1
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?