Pythonコールバック関数でパラメーターを渡すにはどうすればいいですか?

Python では、functools.partial() 関数を使用して、パラメーターをコールバック関数に渡すことができます。

部分適用関数である functools.partial() を使用すると、いくつか引数が事前に設定された新しい呼び出し可能オブジェクトを作成できます。これを使用すると、事前設定パラメーターを持つ新しい関数をコールバック関数として渡すために作成できます。

functools.partial()を使用してコールバック関数にパラメーターを渡す方法の例を以下に示します。

import functools
def callback_func(param1, param2):
print(f"Callback called with params: {param1}, {param2}")
# 创建一个新函数,将参数 'Hello' 预先填充,并将其作为回调函数传递
callback_with_param = functools.partial(callback_func, 'Hello')
# 调用回调函数
callback_with_param('World')

これは次を出力します:

Callback called with params: Hello, World

上記の例において、コールバック関数 callback_func() を定義し、引数が2つになるように設定しました。そのあと、functools.partial() を用いて、引数 ‘Hello’ を予め埋めた新しい関数 callback_with_param を作成しました。最後に、callback_with_param() を呼び出し、引数 ‘World’ を受け取ります。

関数の部分適用を行う関数の functools.partial() は、新たな呼び出し可能なオブジェクトを返すので、以降のコードで再利用できるように変数に格納しておくことができます。

bannerAds