1. 如下代码,使用图文分析整个内存过程:
class Student:
company = "尚学堂" #类属性
count = 0 #类属性
def __init__(self,name,score):
self.name = name #实例属性
self.score = score
Student.count = Student.count+1
def say_score(self): #实例方法
print("我的公司是:",Student.company)
print(self.name,'的分数是:',self.score)
s1 = Student('高淇',80) #s1 是实例对象,自动调用__init__()方法
s1.say_score()
print('一共创建{0}个Student 对象'.format(Student.count))
解答:
2. 设计一个名为MyRectangle 的矩形类来表示矩形。这个类包含:
(1) 左上角顶点的坐标:x,y
(2) 宽度和高度:width、height
(3) 构造方法:传入x,y,width,height。如果(x,y)不传则默认是0,如果width
和height 不传,则默认是100.
(4) 定义一个getArea() 计算面积的方法
(5) 定义一个getPerimeter(),计算周长的方法
(6) 定义一个draw()方法,使用海龟绘图绘制出这个矩形
解答:
import turtle
class MyRectangle:
def __init__(self,x=0,y=0,width=100,height=100):
self.x=x
self.y=y
self.width=width
self.height=height
def getArea(self):
return self.width*self.height
def getPerimeter(self):
return (self.width+self.height)*2
def draw(self):
turtle.color("pink")
turtle.width(10)
turtle.penup()
turtle.goto(self.x,self.y)
turtle.pendown()
turtle.goto(self.x+self.width,self.y)
turtle.goto(self.x+self.width,self.y-self.height)
turtle.goto(self.x,self.y-self.height)
turtle.goto(self.x,self.y)
turtle.done
MR=MyRectangle()
print(MR.getArea())
print(MR.getPerimeter())
MR.draw()