2016-04-29 45 views
-1

我運行此代碼:無輸出,當我運行我的代碼

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?哪裏不對?

+2

你爲什麼不能,甚至複製並粘貼* 「無」 *?你沒有結果,因爲*你沒有任何'返回'。* – jonrsharpe

回答

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)) 
+0

謝謝你,你是對的。 –

相關問題