导师帮看看代码!
来源:2-6 编程练习
陈小莫
2020-06-08 21:21:50
class Point(object):
# 自定义Point类的构造(初始化)方法
def __init__(self, x, y):
self.x = x
self.y = y
# 自定义Point类对象的格式化输出函数(string())
def string(self):
str_point = "{{X:{0}, Y:{1}}}".format(self.x, self.y)
return str_point
class Circle(Point):
# 自定义Circle类的构造(初始化)方法
def __init__(self, x, y, radius):
super().__init__(x, y)
self.radius = radius
# 自定义Circle类对象的格式化输出函数(string())
def string(self):
Point.string(self)
print("该图形初始化点为:{0};半径为{1}".format(Point.string(self), self.radius))
class Size(object):
# 自定义Size类的构造(初始化)方法
def __init__(self, width, height):
self.width = width
self.height = height
# 自定义Size类对象的格式化输出函数(string())
def string(self):
str_size = "{{Width:{0}, Height:{1}}}".format(self.width, self.height)
return str_size
class Rectangle(Point, Size):
# 自定义Rectangle类的构造(初始化)方法,并在方法中调用父类的初始化方法以完成初始化
def __init__(self, x, y, width, height):
Point.__init__(self, x, y)
Size.__init__(self, width, height)
# 自定义Rectangle类对象的格式化输出函数(string())
def string(self):
Point.string(self)
Size.string(self)
print("该图形初始化点为:{0};长宽分别为{1}".format(Point.string(self), Size.string(self)))
if __name__ == "__main__":
# 实例化Circle对象,圆心为(5,5),半径为8
cir = Circle(5, 5, 8)
cir.string()
# 实例化Rectangle对象,顶点位置(15,15),长和宽分别为15和15
rec = Rectangle(15, 15, 15, 15)
rec.string()
# 实例化Rectangle对象,顶点位置(40,30),长和宽分别为11和14
rec2 = Rectangle(40, 30, 11 , 14)
rec2.string()1回答
同学,你好。同学的代码是可以的,实现了相应功能。但还有细节问题需要注意:在输出半径时是要有大括号的

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~
相似问题