class Father(): def init ( self, name, hobby): self. name=name self. hobby=hobby def make(self): print(self. name+self. hobby) #创建对象 f=Father('小头爸爸','爱看书') 使用继承的方式创建子类Son(),添加属性skill,重写子类的方法命名为like,创建子类对象s,调用方法。在控制台输出:大头儿子爱看电视擅长模仿
时间: 2024-03-07 21:47:37 浏览: 297
可以这样实现:
```python
class Father:
def __init__(self, name, hobby):
self.name = name
self.hobby = hobby
def make(self):
print(self.name + self.hobby)
class Son(Father):
def __init__(self, name, hobby, skill):
super().__init__(name, hobby)
self.skill = skill
def like(self):
print('大头儿子爱看电视擅长' + self.skill)
# 创建子类对象s,调用方法
s = Son('大头儿子', '爱看电视', '模仿')
s.like()
```
输出结果为:
```
大头儿子爱看电视擅长模仿
```
相关问题
面向对象的应用——学生类的构建。 属性: 姓名:name 年龄:age性别:sex爱好:hobby 专业班级:professionalClass 成绩列表:scoreLst 2) 方法: 打招呼:sayHi0 爱好调整:setHobby0) 平均分和总分统计:analysisScore0) 类的使用: 使用类实例化一个学生对象,比如你自己,或其他同学。 完成对应的方法调用。
下面是一个基本的学生类的实现:
```
class Student:
def __init__(self, name, age, sex, hobby, professionalClass, scoreLst):
self.name = name
self.age = age
self.sex = sex
self.hobby = hobby
self.professionalClass = professionalClass
self.scoreLst = scoreLst
def sayHi(self):
print("大家好,我是%s,今年%d岁,是一名%s生,我的爱好是%s。"%(self.name, self.age, self.professionalClass, self.hobby))
def setHobby(self, newHobby):
self.hobby = newHobby
def analysisScore(self):
totalScore = sum(self.scoreLst)
avgScore = totalScore / len(self.scoreLst)
return totalScore, avgScore
```
使用该类可以创建一个学生对象,并进行方法调用:
```
# 创建一个学生对象
stu = Student("张三", 20, "男", "打篮球", "计算机科学与技术", [80, 75, 90, 85, 95])
# 调用打招呼方法
stu.sayHi()
# 调用爱好调整方法
stu.setHobby("听音乐")
print("调整后的爱好是:%s"%stu.hobby)
# 调用平均分和总分统计方法
totalScore, avgScore = stu.analysisScore()
print("总分:%d,平均分:%.2f"%(totalScore, avgScore))
```
阅读全文