当我通过像这样的子类从父类访问属性时,一切正常:
class A():
a=1
b=2
class B(A):
c=3
d=B.a+B.b+B.c
print d
Run Code Online (Sandbox Code Playgroud)
但是,如果我尝试从子类中的父类访问一个属性,就像这样,它不起作用:
class A():
a=1
b=2
class B(A):
c=3
d=a+b+c
print d
Run Code Online (Sandbox Code Playgroud)
我收到错误: name 'a' is not defined
假设我有很多方程式,比如d = a + b + c(但更复杂),我无法编辑它们 - 我必须在B类中称"a"为"a",而不是"self.a"或"something.a".但在方程式之前,我可以做Aa = a.但这并不是手动重新加载所有变量的最明智的方法.我想使用继承绕过它.可以或我应该手动完成所有操作吗?或者这个代码中可能是第3条路线?