2017-10-11 148 views
0

我提出的猜數字遊戲,我不知道如何錯誤在Python:類型錯誤:unorderable類型:STR()<int()函數

TypeError: unorderable types: str() < int()

import random 

Randomnumber= random.randint(-10,10) 

while -10 < Randomnumber < 10: 

    print("Guess the number") 
    answer= input("What do you think the number is? ") 
    print(answer) 
    if Randomnumber == answer: 
     print("Correct!") 
    elif answer < Randomnumber: 
     print("Your answer is smaller than the actual value") 
    else: 
     print("Your answer is bigger than the actual value") 
+5

您需要將返回值從'input'轉換爲'int'。目前它是一個字符串。只要做'answer = int(input(「你認爲這個數字是什麼?」))''。但是,如果用戶輸入的內容不能轉換爲整數,例如,您想要處理該異常,例如'abc'。 –

+0

「我不知道如何去做」 - 怎麼做?請提出具體問題。 – charlesreid1

回答

0

試試這個:

import random 

Randomnumber= random.randint(-10,10) 

while -10 <= Randomnumber <= 10: 

    print("Guess the number") 
    answer= input("What do you think the number is? ") 
    print(answer) 
    if Randomnumber == answer: 
     print("Correct!") 
     break 
    elif answer < Randomnumber: 
     print("Your answer is smaller than the actual value") 
    else: 
     print("Your answer is bigger than the actual value") 

一旦輸入法要求您輸入,也不要在單引號中輸入項目。 您只需輸入號碼並按回車。如果您在單引號或雙引號中輸入數字,則它的類型將從數字到字符串進行cahnge,並且比較將失敗。

相關問題