2016-02-27 2 views
-2

Оператор if if работает, но иначе мне никто не может помочь? это мой код. Кстати, если кто-нибудь знает, как попросить повторить один раз, это будет потрясающе!Python if else statement

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

попробуйте удалить [] at if statement. –

+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), вернет целое число между 0 и 2, а не 1 и 10. Просто измените эту строку на randint = random.randint(1, 10).

+0

Я сделал, но если я это сделаю, то только оператор else это то, что я получил, выбираю число от 1 до 10, если вы догадаетесь, что вы получите 10 очков если вы ошибаетесь, вы теряете 15 очков ответ 1 вы теряете 15 пунктов! – mikailavci2

+0

Я только что обновил свой ответ с решением. – zondo

+0

okay ty ur awesome – mikailavci2