学类的时候调用方法输出会多一个None
刚学到类这一章在调用方法时输出,能输出出我想要的东西,但是会多一个None
查了百度说没有用return返回,我试了一下类中没法用retrun
请问怎么把None去掉
这是我的代码:
class Dog:# 在python中,首字母大写的名称被称为类
def __init__(self, name, year):
self.name = name
self.year = year
def sit(self):# 类中的函数被称为方法,类中的函数被称为方法,类中的函数被称为方法
print(f"{self.name} is sitting") # 之前学到的一切函数都适用于方法
return
def roll_over(self):
print(f"{self.name} rolled over!")
return
def name_all(self):
print(f"my dog's name is {self.name}")
my_dog = Dog("皮皮", 10)
print(my_dog.name)
print(my_dog.year)
print()
print(my_dog.sit())
print(my_dog.roll_over())
print(my_dog.name_all())
比如调用 ‘sit’这个方法,能输出:dog is sitting
但是下面一行会有个None
代码少了还好,多的话看着头疼
我用的是pycharm写的
请各位解答疑惑,谢谢!
class Dog:# 在python中,首字母大写的名称被称为类
def __init__(self, name, year):
self.name = name
self.year = year
def sit(self):# 类中的函数被称为方法,类中的函数被称为方法,类中的函数被称为方法
print(f"{self.name} is sitting") # 之前学到的一切函数都适用于方法
def roll_over(self):
print(f"{self.name} rolled over!")
def name_all(self):
print(f"my dog's name is {self.name}")
my_dog = Dog("皮皮", 10)
print(my_dog.name)
print(my_dog.year)
print()
my_dog.sit() # 去掉 print() 函数便可,如上:在 sit() 函数里面已经有 print() 了
my_dog.roll_over() # 同上
my_dog.name_all() # 同上 你的代码 print() 返回 sit()、roll_over()、和 name_all() 里面的值(值是 None) 本帖最后由 suchocolate 于 2021-11-10 19:11 编辑
print(my_dog.sit())# 这3个函数里面已经用有print了,所以就不需要再在调用的时候用print,否则print打印的就是函数的返回值。
print(my_dog.roll_over())
print(my_dog.name_all())
改成
my_dog.sit()
my_dog.roll_over()
my_dog.name_all()
#体会一下return:
def test():
print('函数内的打印')
return '返回值'
test()
print('=' * 100)
print(test())
傻眼貓咪 发表于 2021-11-10 19:08
你的代码 print() 返回 sit()、roll_over()、和 name_all() 里面的值(值是 None)
好的,非常感谢!
suchocolate 发表于 2021-11-10 19:09
print(my_dog.sit())# 这3个函数里面已经用有print了,所以就不需要再在调用的时候用print,否则print打 ...
非常感谢!我去敲一下这个retur
页:
[1]