您好,请问出现Keyerror: 'X’是什么原因?
来源:2-6 编程练习
weixin_慕设计1308382
2020-01-15 00:14:06
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):
Point.__init__(self,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(object):
# 自定义Size类的构造(初始化)方法
def __init__(self,width,height):
self.width=width
self.height=height
# 自定义Size类对象的格式化输出函数(string())
def string(self):
print("{Width:{0}, Height:{1}}".format(self.width,self.height))
class Rectangle(Point, Size):
# 自定义Rectangle类的构造(初始化)方法,并在方法中调用父类的初始化方法以完成初始化
def __init__(self,x,y,height,width):
super(Rectangle,self).__init__(x,y)
super(Rectangle,self).__init__(height,width)
# 自定义Rectangle类对象的格式化输出函数(string())
def string(self):
print("该图形初始化点为:{X:{}, Y:{}; 长宽分别为:{Width:{}, Height:{}}".format(self.x,self.y,self.width,self.height))
if __name__ == "__main__":
# 实例化Circle对象,圆心为(5,5),半径为8
c=Circle(5,5,8)
c.string()
# 实例化Rectangle对象,顶点位置(15,15),长和宽分别为15和15
r1=Rectangle(15,15,15,15)
r1.string()
# 实例化Rectangle对象,顶点位置(40,30),长和宽分别为11和14
r2=Rectangle(40,30,11,14)
r2.string()
1回答
同学你好:
1、使用format格式化时,字符串中需要使用大括号时可以使用大括号进行转义,即在原基础上再嵌套一层大括号。
2、
按照题目要求,调用父类方法必须按照类名.__init__(参数列表)的方式进行调用,如Point.__init__(self, x, y)。
如果我解决了同学的问题,请采纳!学习愉快^_^。
相似问题