Сравнение пользовательского ввода с переменной

У меня такая вот проблема:

#coding:utf-8
import random
a = random.randint(0,5)
b = random.randint(0,5)
c = a + b
print(c)
d = input('Ответ:')
if (c == d):
    print('Да')
else:
    print('Нет')

Программа складывает 2 рандомных числа и сравнивает результат с пользовательским вводом. Но, когда я ввожу правильный ответ,программа выводит мне 'Нет'.Объясните мне, пожалуйста, что я сделал не так?


Ответы (2 шт):

Автор решения: YanaC
d = input('Ответ:')

Ввод сохраняется в формате str, а сравниваете вы с int. Вам нужно переписать эту строку как преобразование строки в число:

d = int(input('Ответ:'))

И все заработает.

→ Ссылка
Автор решения: Mikkel Ontberg

Т.к. input() возвращает строковое значение, его нужно приводить к нужному типу данных, в данном случае int. Поэтому будет:

d = int(input('Ответ:'))
→ Ссылка