Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 动态调用某个对象';s法_Python_Object_Methods_Dynamic - Fatal编程技术网

Python 动态调用某个对象';s法

Python 动态调用某个对象';s法,python,object,methods,dynamic,Python,Object,Methods,Dynamic,动态调用某个对象的方法更可取的方法是: method = getattr(object, name) method(*args, **kw) 或 getattr是我的建议,没有额外的导入,我还没有看到操作符在实践中用于此目的。我也总是使用getattr来实现此目的。我不能代表其他人说话,但我正在努力想出一个半体面的论点……我会使用getattr,但在调用方法之前,我会检查它是否可调用。@spicavigo如果您使用操作符。methodcaller则无需检查方法是否可调用 import oper

动态调用某个对象的方法更可取的方法是:

method = getattr(object, name)
method(*args, **kw)


getattr
是我的建议,没有额外的导入,我还没有看到操作符在实践中用于此目的。我也总是使用
getattr
来实现此目的。我不能代表其他人说话,但我正在努力想出一个半体面的论点……我会使用getattr,但在调用方法之前,我会检查它是否可调用。@spicavigo如果您使用
操作符。methodcaller
则无需检查方法是否可调用
import operator
method = operator.methodcaller(name)
method(object, *args, **kw)