The interpreter teaches the concept that data types will be recognised at input. When using the input() function, however, all data is treated as a string. This is documented, but it's not apparently consistent to new users.
The fix is simple, but this also assumes the input data can be converted.
I'm new to this, there may be some other function that accepts and validates only numeric input data.