本文主要是介绍python-类编程练习二,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
# coding:utf-8
# author:我本善良
# create_time:2021/5/31 22:04
class Point(object):
# 自定义Point类的构造(初始化)方法
def __init__(self,x,y):
self.x = x
self.y = y
# 自定义Point类对象的格式化输出函数(string())
def string(self):
# print('{X:{},y:{}}'.format(self.x,self.y))
return ('{{X:{0},Y:{1}}}'.format(self.x,self.y))
class Circle(Point):
# 自定义Circle类的构造(初始化)方法
def __init__(self, x, y, z):
super().__init__(x, y)
self.radius = z #半径为
# 自定义Circle类对象的格式化输出函数(string())
def string(self):
# print("该图形初始化点为:{X:{0},Y:{1};半径为:{2}}".format(self.x,self.y,self.radius))
#上面会报错:ValueError: unexpected '{' in field name
#解决方法:
#不是匹配符号的{} 需要双倍写
print("该图形初始化点为:{{X:{},Y:{};半径为:{}}}".format(self.x, self.y, self.radius))
class Size(object):
# 自定义Size类的构造(初始化)方法
def __init__(self,width,height):
self.width = width
self.height = height
# 自定义Size类对象的格式化输出函数(string())
def string(self):
return ('{{Width:{},Height:{}}}'.format(self.width,self.height))
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):
r1 = Point.string(self)
r2 = Size.string(self)
print('该图形初始化点为:{};长宽分别为:{}'.format(r1,r2))
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
r2 = Rectangle(40,30,11,14)
r2.string()
'''
师兄的:
class Point(object):
def __init__(self, x, y):
self.x = x
self.y = y
def string(self):
return ("{{X:{0},Y:{1}}}".format(self.x, self.y))
class Circle(Point):
def __init__(self, radius, x, y):
super(Circle, self).__init__(x, y)
self.radius = radius
def string(self):
print("该图形初始化点为:{{X:{0},Y:{1};半径为:{2}}}".format(self.x, self.y, self.radius))
class Size(object):
def __init__(self, width, height):
self.width = width
self.height = height
def string(self):
return ("{{Width:{0}, Height:{1}}}".format(self.width, self.height))
class Rectangle(Point, Size):
def __init__(self, x, y, width, height):
Point.__init__(self, x, y)#继承父类的构造方法
Size.__init__(self, width, height)
def string(self):
r1 = Point.string(self)#调用父类的string方法,使用一个变量接收函数的值
r2 = Size.string(self)
print("该图形初始化点为:{};长宽分别为:{}".format(r1, r2))
if __name__ == "__main__":
c = Circle(8, 5, 5)
c.string()
r1 = Rectangle(15, 15, 15, 15)
r1.string()
r2 = Rectangle(40, 30, 11, 14)
r2.string()
'''
这篇关于python-类编程练习二的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!