2013-07-02 2 views
1

Итак, я делаю очень простой калькулятор в качестве своего первого реального проекта в python, к которому я добавлю больше функций, но теперь проблема в том, что он добавляет числа буквально, поэтому, если я нахожу 2 в качестве первого числа и 3 как второй будет давать 23: Это мой кодPython Чрезвычайно простой калькулятор Буквально добавляет числа

a = input ('Enter the first number') 
b = input ('Enter the second number') 
c = (a+b) 
print (c) 
+0

Каков ваш вопрос? –

ответ

4

input возвращает строку в py3.x, используйте int(), чтобы преобразовать эту строку в целое число:

a = int(input ('Enter the first number')) 
b = int(input ('Enter the second number')) 
1

В Python 2.7 ввод принимает только числовые значения. Но в Python 3.x, input() возвращает строку. Таким образом, вы литерографируете, объединяете две строки в свой код. Так, поверг их int

a = int(input ('Enter the first number')) 
b = int(input ('Enter the second number')) 

Это преобразует числа в целые числа, а затем добавляет их

+1

В py2.x 'input' может принимать любое значение не только числовых значений, а только различие - это эквивалентно' eval (raw_input) '. –

+0

@AshwiniChaudhary: 'input()' в python Ошибка 2.7 throws, если вы вводите любое числовое значение –

+4

Нет, это не так. 'input()' на Python 2.x принимает любое допустимое выражение Python, как указано в документации. Если вы хотите ввести строку, поместите туда кавычки. Если вы хотите ввести список, поместите скобки вокруг него. И так далее. – kindall

Смежные вопросы