类中打印类方法时,为什么会有None
class Dog:eyes = 2
ears = 2
nose = 'Very acute'
leg = 4
bark = 'wangwang'
def run(self):
print('看到小主了,我要飞快的跑向他')
def warning(self):
print('警告你,这是我的地盘,不许你跟我抢')
def sleep(self):
print('靠着小主睡觉真舒服!')
Jeff = Dog()
print(Jeff.warning())
print(Jeff.run())
编写了这个类的属性和方法,当给一个实例Jeff,想要打印有关它的方法时,为什么结果中会有None?这个None指什么?
本帖最后由 z5560636 于 2021-12-14 10:51 编辑
class Dog:
eyes = 2
ears = 2
nose = 'Very acute'
leg = 4
bark = 'wangwang'
def run(self):
print('看到小主了,我要飞快的跑向他')
def warning(self):
print('警告你,这是我的地盘,不许你跟我抢')
def sleep(self):
print('靠着小主睡觉真舒服!')
Jeff = Dog()
Jeff.warning() # 直接调用类方法,不需要print
Jeff.run() # 直接调用类方法,不需要print
None 是由 print打印语句产生,它所依赖的是你 class.run() 方法的返回值,但是你提供的方法没有return 语句的返回值,所以实际上你的print(Jeff.run()) == print(None) 加个return就没有none了 z5560636 发表于 2021-12-14 10:48
None 是由 print打印语句产生,它所依赖的是你 class.run() 方法的返回值,但是你提供的方法没有retu ...
加return语句怎么加呢?return后面写什么? fledgling 发表于 2021-12-15 15:04
加return语句怎么加呢?return后面写什么?
别着急,你记着有return这个语句就行, 慢慢跟着教材走,等讲的时候,你就会恍然大悟。
页:
[1]