[英]Python prints None
這是代碼:
class className:
def createName(self, name):
self.name = name
def displayName(self):
return self.name
def saying(self):
print "Hello %s " % self.name
first = className()
second = className()
first.createName('Bob')
second.createName('Tony')
print first.displayName()
print second.displayName()
print 20*"_"
print first.saying()
print second.saying()
問題如下:當我調用第二個方法(說)時,為什么會這樣:
Hello Bob
None
Hello Tony
None
為什么None
?
默認情況下,所有未指定return
值的functions/methods
都將return None
,因此在打印該方法時,您只會看到返回值。
return "Hello %s " % self.name
而不是打印,或者只調用該方法而不使用print
。
附帶一提,您不需要也不應在python中使用getter來訪問self.name
只需print first.name
等。
返回值,請勿打印:
def saying(self):
return "Hello %s " % self.name
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.