我在函数中传递方法时遇到问题。我已经看过这篇以前的文章。在python中传递方法
How do I pass a method as a parameter in Python
这里是什么,我试过一个简单的例子。
def passMethod(obj, method):
return obj.method()
passMethod('Hi', lower)
最后我会用它来帮助编写一个处理GIS(地理信息系统)数据的函数。数据就像一个数组。我想将一个新的列NAME1添加到数组中。数组然后有一个方法来调用列array.NAME1。
问候, 亚历
您是否熟悉'map'?也许有一点'__iter__'? – cheeken
我不知道你为什么要以这种方式传递一个方法(尽管有合法的用例,为什么你希望这会很好)。如果你对python不熟悉,你可能没有意识到你可以绕过''Hi'.lower'。这会给你一个返回''hi''的可调用对象。 – Darthfett
@Darthfett我试图在最后一段提供一些上下文;但在抽象中很难理解。基本上,我有一个对象具有与数据集中变量名称相关的方法。我想写一个函数,允许用户选择变量,因此需要的方法。因此我不能将该方法硬编码到我的函数中;例如使用“Hi”。因为有时变量可能被称为“上”,甚至“foo”,所以下标不够。 – Alex