Найти - Пользователи
Полная версия: Чтение входных данных
Начало » Python для новичков » Чтение входных данных
1
Swatlprus
Задачка популярная. Искал решение, но на Python не нашел.

Даны два числа A и B. Вам нужно вычислить их сумму A и B

Формат вывода: В единственной строке выхода выведите сумму чисел

Пример. Входные данные 2 2. Выходные 4.

Проблема с чтение входных данных. Что написал я.

a = int(input())
b = int(input())
print(a+b)
marvellik
Swatlprus
Пример. Входные данные 2 2
вам это ни о чем не говорит? у вас при запуске вашего кода сразу должна ошибка вывалиться ValueError: invalid literal for int() with base 10: ‘2 4’
Swatlprus
Да, точно. Это же строка.

stroka = str(input())
a = int(stroka)
b = int(stroka)
print(a+b)

Но код все равно не работает
marvellik
Swatlprus
Да, точно. Это же строка
я вам открою секрет. в питоне все строки
'''На самом деле каждая строка, с точки зрения Питона, — это объект класса str. Чтобы получить по объекту другой объект другого класса, как-то ему соответствующий, можно использовать функцию приведения. Имя этой функции совпадает с именем класса, к которому мы приводим объект. (Для знатоков: эта функция — это конструктор объектов данного класса.) Пример: int — класс для целых чисел. Перевод строки в число осуществляется функцией int().'''
''Для ввода данных в программу мы используем функцию input(). Она считывает одну строку'' вы в своем коде пытаетесь считать три строки !
 >>> stroka = input() # получаем данные
2 3
>>> print(stroka) # видим две цифры через пробел но это все одна строка
2 3
>>> data = stroka.split() # делим цифры по пробелу
>>> print(data) # видим список из цифр
['2', '3']
>>> a,b = data # множественное присвоение переменным-значения
>>> print(a,b) # видим каждая переменная имеет свое значение
2 3
>>> a+b # упсс а перменные то строки
'23'
>>> a = int(a) # приводим к ЧИСЛУ (цифра это еще не число а строка а вот число это уже математика)
>>> b = int(b)
>>> a+b # видим нужный результат
5
и все это в две строки
 a,b = [int(i) for i in input().split()]
print(a+b)
можно одной
 print(sum(map(int,input().split())))
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB