[Tutor] output is all integer when there should be some floats
Jim Mooney Py3winXP
cybervigilante at gmail.com
Sun Apr 26 06:18:53 CEST 2015
It seems odd to me that there are three tests to see if user input is
digits - isdecimal, isdigit, isnumeric, but nothing to test for a float
unless you use a try - except. Or did I miss something? Anyway, I tried a
try - except, but I don't see why my output is all integer when I only
convert to integer if it passes the is_integer test:
user_values = []
while True:
user_input = input("Give me a number: ")
if user_input.lower() == 'done': break
try:
user_input = float(user_input)
if user_input.is_integer: user_input = int(user_input)
user_values.append(user_input)
except Exception as err:
print("You entered {0}, which is not a valid number: error -
{1}".format(user_input, err))
continue
print("Your entered numbers were {0}".format(user_values)) #only integers
print, even when I entered some floats
--
Jim
If you only had one hour left to live, would you spend it on Facebook,
Twitter, or Google Plus?
More information about the Tutor
mailing list