问答详情
源自:3-3 Python面向对象-定义类的方法

为什么最后会打印出None

class  Programer(object):
   hobby = "Play computer"
   def __init__(self,name,age,weight):
       self.name = name
       self._age = age
       self.__weight = weight
   @classmethod
   def  get_hobby(cls):
       return cls.hobby

   @property
   def get_weight(self):
       return self.__weight

   def self_introduction(self):
       print "My name is %s \n I'm %d years old"%(self.name,self._age)


if __name__ == "__main__":
   programer = Programer("Albert",25,80)
   print dir(programer)
   print programer.__dict__
   print Programer.get_hobby()
   print programer.get_weight
   print programer.self_introduction()

提问者:南区大表哥 2017-06-09 17:04

个回答

  • qq_嗑瓜子虫_03382717
    2020-01-28 18:26:03

    简单的来说,最后一个结果Noneself_introduction()方法的返回值,也就是未显式的return 语句。

  • 娃子学习敲代码
    2019-07-16 16:20:43

    就好比你打印introduction时打印两次 当然有问题 去掉下面的print或者将上面的print改为return

  • 秋水长天nice
    2018-06-10 20:56:22

    去掉print

  • 南区大表哥
    2017-06-09 17:09:00

    很简单 因为最后一个函数没有返回值  楼主你的基础太差了  多看看基础吧