这可能看起来有点奇怪,但这会为我完成一点代码提供一个方便的方法。在
因为Python方法本身就是对象,所以方法可以有自己的方法吗?也就是说,如果我想执行以下操作(忽略语法):
def methodCaller(someArgs, methodB):
# some stuff here . . .
variableWithAGoodName = methodB()
jonSkeet = methodB.methodC(variableWithAGoodName)
return jonSkeet
有可能吗?我的猜测是否定的,但是如果方法只是对象,那么它不应该是可能的吗?在
非常感谢你!在
编辑:我想正如已经发布的,我正在寻找一个高阶函数。在
我的问题有点学术性,因为我知道我可以重新组织我的代码,以完全不同的方式来做这种事情。但是,事实上,我正在用Python做实验,至少要学习它的基本知识。我还没有尝试过,但是由于我对Python不熟悉,所以有可能这样做,只是不使用这种语法。在
另一个编辑:我试图搞笑我的名字,但它使问题不清楚。为此我道歉。下面是一个更好的例子:
^{pr2}$
python中的函数是一类具有方法和属性的对象。在
编辑:
因为函数是一级对象,所以也可以像传递其他变量一样传递它们。您还可以编写“高阶函数”,即函数的函数(或返回函数的函数)
编辑2:
唱着“没有比S俱乐部派对更棒的派对了!”]没有比完整代码示例更好的例子了!在
^{pr2}$是和否。很明显,它们可以被赋予与方法类似的属性。此外,函数附带已经附加的方法-例如,
__call__
方法,它与函数一起调用。在但是,要向对象添加方法,您通常会做什么?子类化对象的类,并添加方法。但是,如果您尝试子类化函数
你会得到这个错误
^{pr2}$如果你想创建一个“可调用”的对象,它可以有方法和使用继承,可以尝试这样的方法。在
相关问题 更多 >
编程相关推荐