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()