make_cylinder_volume(r)
Python で、別の関数を返す関数を書きたいと思います。その返された関数は、パラメータで呼び出すことができ、高さと半径h
で円柱の体積を返す必要があります。h
r
Python で関数から値を返す方法は知っていますが、別の関数を返すにはどうすればよいですか?
make_cylinder_volume(r)
Python で、別の関数を返す関数を書きたいと思います。その返された関数は、パラメータで呼び出すことができ、高さと半径h
で円柱の体積を返す必要があります。h
r
Python で関数から値を返す方法は知っていますが、別の関数を返すにはどうすればよいですか?
Python を使用して、これを試してください。
import math
def make_cylinder_volume_func(r):
def volume(h):
return math.pi * r * r * h
return volume
たとえば、radius=10
andを使用して、次のように使用しheight=5
ます。
volume_radius_10 = make_cylinder_volume_func(10)
volume_radius_10(5)
=> 1570.7963267948967
関数を返すことは、関数内で新しい関数を定義し、最後にそれを返すという単純な問題であることに注意してください。各関数に適切なパラメーターを渡すように注意してください。参考までに、別の関数から関数を返す手法はカリー化として知られています。