我有两种方法在里面,一个静态的,另一个没有静态类:不受约束的方法错误而调用静态方法
class Person(object):
def getDetails(self):
Person.change_something(self.name)
@staticmethod
def change_something(name):
return name.upper()
当我创建一个类Person的一个实例,并调用person.getDetails()
,我得到错误,说unbound method change_something() must be called with Person instance as first argument (got str instance instead)
。任何人都可以指出我在这里做错了什么?
你使用Python 2或3吗? – BrenBarn 2012-08-08 08:13:20
这不是一个完整的,可测试的例子(冒号缺失)。请发布您的真实代码,但尝试将其简化为再现问题的最简单形式(例如:self.name可以替换为:“test”)。我们需要一个我们可以复制粘贴的代码,包括对象创建和调用,一切。 – 2012-08-08 08:24:36