Python在一行中使用append all时返回None
想知道为什么使用一行返回结果没有Python在一行中使用append all时返回None,python,return,append,Python,Return,Append,想知道为什么使用一行返回结果没有 if saveSuccess==True and msgSuccess == True: self.test_result.append("Saved") return self.test_result.append("Saved Success and Message Passed") 为什么下面的工作会与上面的工作相反 if saveSuccess==True and msgSuccess == True:
if saveSuccess==True and msgSuccess == True:
self.test_result.append("Saved")
return self.test_result.append("Saved Success and Message Passed")
为什么下面的工作会与上面的工作相反
if saveSuccess==True and msgSuccess == True:
self.test_result.append("Saved")
return self.test_result
append
返回None
,这就是原因:
>>> l = []
>>> print l.append('x')
None
我们调用append是因为它附加的副作用,而不是因为它的返回值
我需要在上面的示例中使用print,因为控制台在None
时不显示结果,因为.append()
返回None。