第一题
解答:
class Student(Person):
def __init__(self,*score):#j接受多个参数
Person.__init__(self,name,age,sex)#学生类继承人的name,age,sex这些属性
self.score=score
def avg1(self):
a=sum(self.score)/len(self.score)
return a
s1=Student('tom',18,'男',58,59,57,56,53)
print(s1.avg1())
第二题
解答:
class Vehicle:
def __init__(self,speed,size):
self.speed=speed
self.size=size
def moves(self,s):
print('移动了%s'%s)
def setSpeeed(self,speed):
if str(speed).isdigit():#Python isdigit() 方法检测字符串是否只由数字组成。
self.speed=speed
else:
print('请输入正确的速度')
def speedUp(self):
self.speed+=10
print('当前速度',self.speed)
def speedDown(self):
self.speed-=10
print('当前速度',self.speed)
def test():
v=Vehicle(30,15)
v.moves(20)
v.setSpeeed(50)#在这里将属性speed值修改为50了,init只是初始化属性,之后即方法可以对属性修改。
v.speedUp()#加速10---60
v.speedUp()#加速10--70
v.speedDown()#减速10---60 即通过这几个方法将原来属性speed变为60了
if __name__=='__main__':
test()
第三题
解答:
class car:
def __init__(self,color,brand,plate,price):
self.color=color
self.brand=brand
self.plate=plate
self.price=price
#通过一个方法打印输出属性值
def drive(self):
print(self.color,self.brand,self.plate,self.price)
#实例化
c=car('红色','奔驰','黑A0000',1500000)
c.drive()
测试结果:
红色 奔驰 黑A0000 1500000
第四题
测试结果:
class dog:
def __init__(self,name):
self.name=name
@property#j将方法当属性用
def eat(self):
print('%s is eating' %self.name)
d=dog('ChenRonghua')
#d.eat()#这个地方错了,应该去掉括号。即对了。
d.eat
第五题
测试结果:
第六题
答案: