2016-03-26 196 views
0

我在python中編寫了一個簡單的階乘函數來知道n的階乘。就像我們給出n一樣,它顯示了n的階乘。但問題是,我使用raw_input函數來獲取n的值。但不能與此一起工作。我能做些什麼來處理raw_input?python中的鍵盤輸入

+1

粘貼你的代碼,使人們可以清楚地瞭解您的問題.. – ravigadila

+0

你能接受我的答案,如果你找到它正確的?我也建議@XYZ程序員建議的一樣,我在他之前回答。 –

回答

0

你需要轉換默認字符串類型爲int

val = raw_input() #val accepts a string 

val = int(raw_input()) #val takes integer input 
+0

這正是我的回答。 –

+0

你至少可以提供一個支持你的答案的例子,而不是向下投票。 – XZ6H

1

您的因子函數可能需要一個整數作爲輸入。

但是,raw_input返回一個字符串

因此,您需要將返回的字符串轉換爲整數。 通過使用int()

或者您可以直接使用input()它在Python2中返回一個整數。

+0

'input()'在python 3中返回一個字符串,所以你的最後一行沒有任何意義(在python 2中使用'input()'是一個非常糟糕的主意) –

+0

我的不好,我會編輯它。但是爲什麼在python2中使用input()是一個非常糟糕的主意? –

+1

,因爲輸入wil會評估用戶輸入的任何蟒蛇行。因此,如果他們退出(),例如,程序關閉,就像那樣。 – Dleep