python - 在python子类中调用超类方法
问题描述
我是 Python 新手,我在网上阅读了很多示例来调用超类方法子类,但没有一个对我有用,请找到我拥有的包结构
F (director)
---1. __init__.py
---2.A.py
---3.B.py
内容如下
1__init__.py
is empty
2.A.py
class A:
def hi(self,name):
print ("hi",name)
3.B.py
from F.A import A
class B(A):
def testhi(self,name):
super().hi(name)
super(B,self).hi(name)
super(self).hi(name)
A.hi(self,name)
x= B()
x.testhi("python")
他们都没有工作我总是收到错误消息'super' object has no attribute 'hi'
解决方案
感谢@MichaelButscher,方法hi与A类处于同一级别,导致它不是类实例级别的方法。解决这个问题解决了这个问题。