我运行此代码:
def fact(i):
j = 1
while i >= 1:
j = i * j
i -= 1
i = input("input the number: ")
print (fact(i))
并看到此输出:
input the number: 6
None
为什么我的输出None
?有什么问题?
答案 0 :(得分:0)
您正在打印功能的结果。要使函数返回结果,必须使用return
语句。如果您没有返回任何内容,则该功能将自动返回None
。我怀疑您希望函数返回j
,因此您需要在函数末尾添加return j
才能使其正常工作。
这应该有效:
def fact(i):
j = 1
while i >= 1:
j = i * j
i -= 1
return j
i = input("input the number: ")
print (fact(i))