老师,我的代码为什么运行起来那么多得None,好奇怪
来源:1-2 【学前导学】Python全栈工程师课程的整体介绍
James_summers
2020-08-18 19:13:28
class Person: def __init__(self,name,gender): self.name=name self.gender=gender def speak(self): print('hello ! 我是{}'.format(self.name)) def relation(self): pass class Student(Person): def __init__(self,name,gender,score,major): Person.__init__(self,name,gender) self.score=score self.major=major self.__stu_num='2018014002' def speat(self): print('我的学号为{},很高兴认识大家'.format(self.__stu_num)) def identify_stu(self): if self.__stu_num=='2018014002': print('我的分组已经完成') else: print('请稍后,马上为你自动分组') def relation(self): if isinstance(Student,Person): print('我的父类是Person') else: print('正在查询中') if __name__=='__main__': stu=Student('小明','男',90,'数学') result=stu.speak() print(stu.speat()) print(result) print(stu.identify_stu()) print(stu.relation())
1回答
好帮手慕雪
2020-08-19
由于speat()等方法并没有返回值,而调用处又print(stu.speat()),所以就会多输出None。可以有两种解决方式:1)同学可以修改一下你的调用方式,就不会有多余的None输出了。
2)把方法中的print改为return
如果我的回答解决了您的疑惑,请采纳,祝学习愉快~~~~
相似问题