2016-02-27 143 views
-2

我的if語句有效,但其他人不能幫助我嗎? 這是我的代碼。順便說一句,如果有人知道如何在一次之後要求重試會很棒!Python if else語句

import random 

print('choose a number between 1 and 10,if you guess right you get 10 points if you guess wrong you lose 15points') 

answer = input() 

randint = random.randint(0,2) 

print('the answer is ',randint) 

if [answer == randint]: 

print('gratz! you win 10points!') 

else: 

print('you lose 15points!') 
+0

這聽起來像是功課... – purpletentacle

+0

嘗試刪除if語句。 –

+0

'randint'不是1到10之間的數字... –

回答

4

不要在您的if聲明中加上括號。當你這樣做時,你正在創建一個新的列表。它改成這樣:

if answer == randint: 

你可以把括號圍繞它,如果你想,但不是[]。你的第二個問題是random.randint()返回一個整數,但是input()返回一個字符串(在Python3中)。您可以改爲if int(answer) == randint:,或者您可以說if answer == str(randint):。 @ cricket_007指出的第三個問題是randint(0, 2)將返回02之間的整數,而不是110。只要將該行更改爲randint = random.randint(1, 10)即可。

+0

我做了但是如果我這樣做,它只會做else語句這就是我得到的選擇1到10之間的數字,如果你猜對了你得到10分如果你猜錯了你輸了15分答案是1 你輸了15分! – mikailavci2

+0

我剛剛更新瞭解決方案。 – zondo

+0

好的,你的真棒 – mikailavci2