以下是我编写的一些简单的Python 2.6代码。代码按预期工作,除了我很好奇为什么在输出中返回零(0)?
非常感谢!
class One(object):
def __init__(self):
self.A = 0
def Two(self, *args):
for x in args:
if x == 1:
print x
return self
def answer(self):
print (self.A)
ABC = One()
ABC.Two(1, 1, 9, 0, 7).answer()
输出
1
1
0
Process finished with exit code 0
答案 0 :(得分:1)
也许如果你用不同的方式写它,你就会明白发生了什么:
class One(object):
def __init__(self):
self.A = 0
def Two(self, *args):
for x in args:
if x == 1:
print x
return self
def answer(self):
print(self.A)
ABC = One()
ABC.Two(1, 1, 9, 0, 7)
print '-' * 80
ABC.answer()
如您所见,方法answer
是返回零的方法,而不是方法Two