老师,我的代码为什么运行起来那么多得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

如果我的回答解决了您的疑惑,请采纳,祝学习愉快~~~~
相似问题