Когда вы вводите что-то и нажимаете Enter, input
обрабатывает эти данные как одну строку .Таким образом, 3.141<hit Enter>
представляет собой одну строку "3.141"
, и ее можно преобразовать в число с плавающей запятой с помощью float
.
Однако 3.141 5926<hit Enter here>
представляет собой одну строку "3.141 5926"
.Это представление единственное число (с плавающей точкой) ?Это не (есть два числа), поэтому float
не может преобразовать это в одно число из-за пробела.
Если вы хотите обработатьэти числа разделяются пробелом как отдельные числа, split
строка и затем преобразуют каждое число:
data = input().split() # gives ['3.141', '5926']
for x in data:
print(float(x)) # converts each string to a number