2016-03-15 100 views
-4

遊戲要求用戶輸入15之間的數字,並查看它們是否與計算機隨機猜測相匹配。Python初學者(猜測隨機數字遊戲)

當我得到ifelse聲明時,我的代碼似乎無法正常工作,並且無法解決問題。

from random import randint 

print "I am thinking of a number between 1 and 5"; 
print "What do you think the number is that I am thinking of", 
guess = raw_input("> ") 
cguess = (randint(1,5)) 

print "Your guess was", guess, 
print "\nMine was", cguess, 

if guess == cguess 
    print "Well done you win" 
if guess != cguess 
    print "You lose" 
+2

你的代碼有多個問題,從基本的語法錯誤,常見的問題。請查看您的教學材料,而不是要求我們糾正您的猜測。 「 – TigerhawkT3

+0

」似乎不起作用「不是一個問題。 – 2016-03-15 06:35:04

回答

-1

你缺少你if語句的結束冒號(:)。

if guess == cguess: 
    print("Well done you win!") 
else: 
    print("You lose") 

它跳過guess == cguess條件,因爲raw_input()返回string,不是int。首先投射你的cguess變量(str(cguess))。

+0

感謝If Else聲明現在正在工作。然而,它正在跳過「幹得好贏」的說法。 – user3176585

+0

編輯我的答案。 –

-1

raw_input返回一個字符串,所以你要比較一個字符串和一個整數。 你需要把字符串轉換成整數

guess = int(raw_input("> ")) # <----- see the int call 

想現在== cguess就可以了(如果你猜井)

+0

感謝您的幫助,看起來我必須對字符串和整數進行更多的研究。 – user3176585