2016-08-15 57 views
-2
mark = raw_input 

if mark < 50: 
    print "your mark is unsatisfactory!" 

else: 
    print "your mark is satisfactory!" 

我想根據用戶輸入的數字來創建答案。但是,當我運行代碼時,它只會顯示「您的商標令人滿意!」我似乎無法弄清楚爲什麼它不讓我輸入數字。爲什麼python忽略我的其他代碼行?

+2

你需要真正調用'raw_input',像'raw_input()'。目前你只是創建了一個對函數的引用。 –

+0

簡單的答案是'raw_input()'(注意圓括號!)返回一個*字符串*不是一個整數。這是重複的,儘管我無法找到副手目標 – Ajean

回答

0

您需要撥打raw_input。現在你只需要函數的值,它總是爲真(因爲對於Python來說,函數是真實的)。添加一些括號使其raw_input()實際調用該函數。你也想調用int(raw_input())從字符串中獲得一個整數。

0

呼叫raw_input,像

mark = int(raw_input("enter something")) 

if mark < 50: 
    print "your mark is unsatisfactory!" 
else: 
    print "your mark is satisfactory!" 

注意轉換爲int,因爲raw_input返回一個字符串。

此刻你正在做的是創造是指功能raw_input另一個變量,它比較對50

0

那是因爲你不調用該函數。

你要做的:

answer = raw_input('your question') 

此外,answer的類型是str。因爲它看起來像你想將它用數字比較,你必須轉換成一個數字:

answer = int(answer) # if you want an int 
answer = float(answer) # if you want a float 

注:通過做

mark = raw_input 

mark

現在等於功能,女巫意味着如果你這樣做mark('...'),它會做同樣的事情比raw_input('...')

相關問題