为什么以下代码最后打印“无”?
class Square:
def printx(self):
print "A"
test = Square()
print test.printx()
输出:
A
None
为什么不只打印字母“A”?
答案 0 :(得分:5)
当您致电printx
时,print
语句会打印出“A”。然后方法结束,并返回None
,这就是最后一行中print
语句的打印。
你可以这样解决 -
class Square:
def printx(self):
print "A"
test = Square()
test.printx()
OR
class Square:
def printx(self):
return "A"
test = Square()
print test.printx()
虽然基于语义,但第一个选项会更有意义。
答案 1 :(得分:5)
因为您有两个print
语句。您正在打印“A”以及printx
的返回值。