请问这样写可以吗?

来源:2-6 编程练习

幕布斯8370667

2019-12-25 21:51:07

class Point(object):

# 自定义Point类的构造(初始化)方法

    def __init__(self, x , y):

        self.x = x

        self.y = y


# 自定义Point类对象的格式化输出函数(string())

    def string(self):

        print('[X:{0},Y:{1}]'.format(self.x, self.y))

class Circle(Point):



# 自定义Circle类的构造(初始化)方法

    def __init__(self, x, y, radius):

        super(Circle, self).__init__(x, y)

        self.radius = radius


# 自定义Circle类对象的格式化输出函数(string())

    def string(self):

        print('该图形初始化点为:[x:{0},y:{1}]; [半径为:{2}]'.format(self.x, self.y, self.radius ))

class Size(Point):

# 自定义Size类的构造(初始化)方法

    def __init__(self, x, y, Width, Height):

        super(Size, self).__init__(x, y)

        self.Width = Width

        self.Height = Height

# 自定义Size类对象的格式化输出函数(string())

    def Size(self):

        print('Width:{0},Height:{1}'.format(self.Width, self.Height))

class Rectangle(Size, Point):

# 自定义Rectangle类的构造(初始化)方法,并在方法中调用父类的初始化方法以完成初始化

    def __init__(self, x, y, Width, Height):

        super(Rectangle, self).__init__(x, y, Width, Height)


# 自定义Rectangle类对象的格式化输出函数(string())

    def string(self):

        print('该图形初始化点为:[x:{0},y:{1}];长宽分别为:[Width:{2},Height:{3}]'.format(self.x, self.y, self.Width, self.Height))


if __name__ == "__main__":

    # 实例化Circle对象,圆心为(5,5),半径为8

    fun = Circle(5,5,8)

    fun.string()

    # 实例化Rectangle对象,顶点位置(15,15),长和宽分别为15和15

    fun_1 = Rectangle(15,15,15,15)

    fun_1.string()

    # 实例化Rectangle对象,顶点位置(40,30),长和宽分别为11和14

    fun_2 = Rectangle(40,30,11,14)

    fun_2.string()


写回答

1回答

时间,

2019-12-26

同学,你好。整体是没有太大问题的,但还有细节需要注意:

在输出效果时,使用的是大括号,同学使用的是中括号。

当使用format格式化时,字符串中需要输出大括号时可以使用大括号进行转义。

http://img.mukewang.com/climg/5e041f3e093cec6207170077.jpg

http://img.mukewang.com/climg/5e0422750909a29e07080139.jpg

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

0

0 学习 · 8160 问题

查看课程