python - 获取子类属性

1 投票
1 回答
590 浏览
提问于 2025-04-16 10:30

如何在子类中获取属性?我指的是age=age这一部分。

def method(name='thomas', age=27):
   submethod(age=age)

1 个回答

3

我不太明白你说的这个代码是什么意思,那个子方法是抽象的吗?

不管怎样,你缺少了 self,这样就不是一个方法了。这样写应该可以:

def method(self, name='Thomas', age=27):
  self.submethod(name, age)

如果子方法的参数是关键字参数,你可以为了更清楚地表达,把本地参数的名字改一下:

def method(self, name='Thomas', age=27):
  the_age = age
  self.submethod(name, age=the_age)

或者其实也可以不改,关键字参数的名字和本地变量不会冲突,所以只要你加上 self,原来的代码就能正常工作:

def method(self, name='Thomas', age=27):
  self.submethod(name, age=age)

撰写回答