修改以下错误代码class Face(object): def __init__(self, L, m, H, q, tanbeta, b): #工作面长度L 采厚m 平均采深H self.L = L self.m = m self.H = H #地标移动参数 self.q = q self.tanbeta = tanbeta self.b = b #坐标系统 self.S = 0.05*H self.r = H/tanbeta self.l = L-2*0.05*H #最大值 class Coord_Sys(Face): def __init__(self): self.face = Face
时间: 2023-12-28 22:06:22 浏览: 62
修改后的代码如下所示:
```
class Face(object):
def __init__(self, L, m, H, q, tanbeta, b):
# 工作面长度L,采厚m,平均采深H
self.L = L
self.m = m
self.H = H
# 地标移动参数
self.q = q
self.tanbeta = tanbeta
self.b = b
# 坐标系统
self.S = 0.05 * H
self.r = H / tanbeta
self.l = L - 2 * 0.05 * H
# 最大值
super().__init__()
class Coord_Sys(Face):
def __init__(self, L, m, H, q, tanbeta, b):
super().__init__(L, m, H, q, tanbeta, b)
self.face = Face(L, m, H, q, tanbeta, b)
```
修改内容:
1. Face类没有继承任何父类,因此在构造函数中不需要调用super()函数。
2. Coord_Sys类继承自Face类,因此需要在构造函数中调用父类的构造函数,以便初始化父类的属性。同时,不需要为face属性再次创建一个Face对象,因为继承自Face类的属性和方法在子类中都可以直接使用。
阅读全文