関数名を含む文字列を使用して関数を呼び出すにはどうすればよいでしょうか? たとえば、次のようになります。
import foo
func_name = "bar"
call(foo, func_name) # calls foo.bar()
ベストアンサー1
foo
メソッドを持つモジュールが与えられた場合bar
:
import foo
bar = getattr(foo, 'bar')
result = bar()
getattr
同様に、クラスインスタンスにバインドされたメソッド、モジュールレベルのメソッド、クラスメソッドなどにも使用できます。