我是python的新手,我正在试图找出如何在矩形中进行类。我不知道从哪里开始为此编写代码。只是寻找一些帮助开始。非常感谢任何帮助。
使用以下属性和方法创建名为“Rectangle”的类(包括每个方法的示例运行):
每个实例都应具有x,y,width和height属性。
您应该能够在创建矩形时传递属性,如下所示(其中x = 5,y = 10,width = 50,height = 100依次):
r =矩形(5,10,50,100)
创建一个将矩形作为字符串返回的方法(提示:实现 str )。对于属性值为x = 5,y = 10,width = 50,height = 100的矩形对象,它应返回字符串“Rectangle(5,10,50,100)”。
r2 =矩形(5,10,50,100)
打印(R2)
矩形(5,10,50,100)
创建一个名为right
的方法,该方法获取矩形右边缘的值。不应该争论:
r3 =矩形(3,5,10,20)
r3.right()
13
r4 =矩形(12,10,72,35) r4.right() 84
5.创建一个名为bottom
的方法,该方法获取矩形底边的值
r5 =矩形(5,7,10,6)
r5.bottom()
13
r5.y + = 12
r5.bottom()
25
6.创建一个名为size
的方法,该方法返回矩形的宽度和高度。
r6 =矩形(1,2,3,4)
r6.size()
(3,4)
7.创建一个名为position
的方法,该方法返回矩形的x和y坐标。
r6.position()
(1,2)
8.创建一个名为area
的方法,返回矩形区域。
r6.area()
12
9.创建一个名为expand
的方法,该方法采用偏移值并返回在所有方向上以偏移量展开的矩形的副本。
r =矩形(30,40,100,110)
ř
矩形(30,40,100,110)
r1 = r.expand(offset = 3)
R1
矩形(27,37,106,116)
不应修改原始矩形。
[R
矩形(30,40,100,110)
负值应返回缩小的矩形。
r.expand(-5)
矩形(35,45,90,100)
class Rectangle:
def __init__(self, X, Y, W, H):
self.x = X
self.y = Y
self.w = W
self.h = H
def complete(self):
return self.x,self.y,self.w,self.h
def right(self):
return self.x + self.w
def __str__(self):
return('Rectangle(' + str(self.x) + ',' + str(self.y) + ','
+ str(self.w) + ',' + str(self.h)+')')
def bottom(self):
return self.y + self.h
def __str__(self):
return('Rectangle(' + str(self.y) + ',' + str(self.h) + ','
+ str(self.y) + ',' + str(self.h) + ')')
def size(self):
return self.w,self.h
def position(self):
return self.x,self.y
def area(self):
return self.w * self.h
def expand(self):
print(Rectangle(5,10,50,100).complete())
print(Rectangle(3, 5, 10, 20).right())
print(Rectangle(12, 10, 72, 35).right())
print(Rectangle(5,7,10,6).bottom())
print(Rectangle(1,2,3,4).size())
print(Rectangle(1,2,3,4).position())
print(Rectangle(1,2,3,4).area())
最后这就是我想出的。我迷失了如何开始#9的最后一部分。此外,如果有人看到我使用我当前代码的任何问题,将不胜感激。