2017-03-31 23 views

回答

8

因爲你忘了你的輸入轉換爲數字,因爲它代表它是一個字符串,在Python 2任字符串總是大於任何數字。

使用int(raw_input("What age are you?"))

(當你嘗試比較字符串和一個數字,這是一個很好的設計決策的Python 3拋出一個錯誤。)

+1

Aaaaah yes,非常感謝 – NickJames

0

raw_input()功能使用輸入字符串,因此,您應該將輸入轉換爲int類型。

age = int(raw_input("What age are you?")) 
def old(n): 
if n >= 30: 
    print "You are older than some hills" 
else: 
    print "Youth" 

old(age) 

這將工作。

0

正如其他人所說,您需要將輸入轉換爲整數。但是,如果用戶輸入一個字母,該程序將引發錯誤。爲了確保不會發生這種情況,我建議使用try和except來完成輸入,這可以按如下方式完成:

age = raw_input("What age are you?") 
try: 
    int(age) 
except ValueError: 
    print('That is not a number')