猿问

确保用户的输入不是 Python 3 中的字符串

我尝试创建一个函数,首先检查输入是否不是字符串。但是如果用户输入一个浮点数,它就会得到 False。我需要它接受 Int 和 Float,bot 不是字符串。


def squat():

    value = input("What is your RM1?")


    if value.isnumeric():

        rm1 = float(value)

        print("Your RM1 is: ", rm1)

        print(type(value))


    else:

        print("Error")



squat()


慕斯王
浏览 101回答 2
2回答

至尊宝的传说

您可以try..except在您的情况下使用块def squat():    value = input("What is your RM1?")    try:         rm1 = float(value)    except ValueError:         print("error")         exit(1)

撒科打诨

该input()函数始终返回一个字符串。您可以使用正则表达式来检查字符串是否类似于数字:import revalue = input('What is your RM1? ')if re.match(r'^\d+(\.\d+)?$', value):    rm1 = float(value)    print('Your RM1 is: ', rm1)else:    print('Error')
随时随地看视频慕课网APP

相关分类

Python
我要回答