请老师看看代码需要优化的地方
class Person(object):
# 重写实例对象的构造(初始化)方法
def __init__(self,name,gender):
self.name = name
self.gender = gender
# 自定义实例方法,格式化打印实例属性name的值
def speak(self):
print("hello!我是{0}".format(self.name))
# 自定义实例方法,占位作用
def ralation(self):
pass
class Student(Person):
# 重写实例对象的构造(初始化)方法,并调用父类构造方法,实现对实例属性的赋值
def __init__(self,name,gender,score,major,stu_num='2018014002'):
super(Student,self).__init__(name,gender)
self.score = score
self.major = major
self.__stu_num = stu_num
# 自定义实例方法,格式化打印实例属性stu_num的值
def speak(self):
super(Student,self).speak()
print("我的学号为{0},很高兴认识大家".format(self.__stu_num))
# 自定义实例方法,判断学号是否为既定值,并根据判断结构 进行分类打印
def identify_stu(self):
if self.__stu_num == "2018014002":
print("我的分组已经完成")
else:
print("请稍候,马上为你自动分组")
# 自定义实例方法,设置实例对象的学号为传入的值
def set_num(self,new_num):
self.__stu_num = new_num
# 自定义实例方法,判断该类是否为Person类的子类,并进行分类打印
def relation(self):
if issubclass(Student,Person):
print("我的父亲是Person")
else:
print("父亲正在查询中……")
if __name__ == '__main__':
stu = Student('小明', '男', 90, '数学')
# 调用speak方法 打印stu对应的值
stu.speak()
# 调用实例方法 鉴别学号是否为指定值
stu.identify_stu()
# 调用实例方法 鉴别实例对象所属的类的父类是否为Person
stu.relation()
print("******************")
stu_2 = Student('小红', '女', 89, '英语')
# 调用实例方法 设置stu_2的学号为'2018040625'
stu_2.set_num('2018040625')
# 调用实例方法 打印stu_2对应的值
stu_2.speak()
# 调用实例方法 鉴别学号是否为指定值
stu_2.identify_stu()
正在回答 回答被采纳积分+1
- 参与学习 人
- 提交作业 2727 份
- 解答问题 8160 个
想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星