我用python中的函数编写了比较三个数字的代码。我得到了';无';输出正确。为什么会这样
输出:我用python中的函数编写了比较三个数字的代码。我得到了';无';输出正确。为什么会这样,python,Python,输出: def greater(n1, n2, n3): if n1>=n2 and n1>=n3: print('n1 is grater') elif n2>=n1 and n2>=n3: print('n2') else: print('n3') result = greater(1, 9, 3) print(result) 在python中,如果函数没有return语句,它将返回null
def greater(n1, n2, n3):
if n1>=n2 and n1>=n3:
print('n1 is grater')
elif n2>=n1 and n2>=n3:
print('n2')
else:
print('n3')
result = greater(1, 9, 3)
print(result)
在python中,如果函数没有return语句,它将返回null 因此,在函数执行后,将null分配给结果并打印结果,即
None
。要解决此问题,只需删除最后一行print(result)
,即可正常工作
或者,您也可以将函数更改为返回字符串,而不是立即打印它。输出是什么意思:n2无?输出显示n2,这是正确的。显示您如何调用它。您正在打印(更大的(…)?请注意,此函数不返回任何内容。您想要什么输出?您的函数已在其内部打印。然后,您正在打印
result
,它保存函数的返回值None
(因为您没有显式返回值)…您的函数没有显式返回值(没有return
语句),因此它返回None
,并且您将其分配给result
,所以打印结果
打印无
。
n2
None