为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

慕斯王 2021-06-06 13:39:45
我尝试创建一个函数,首先检查输入是否不是字符串。但是如果用户输入一个浮点数,它就会得到 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()
查看完整描述

2 回答

?
至尊宝的传说

TA贡献1789条经验 获得超10个赞

您可以try..except在您的情况下使用块


def squat():

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

    try:

         rm1 = float(value)

    except ValueError:

         print("error")

         exit(1)


查看完整回答
反对 回复 2021-06-09
?
撒科打诨

TA贡献1934条经验 获得超2个赞

该input()函数始终返回一个字符串。您可以使用正则表达式来检查字符串是否类似于数字:


import re


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

if re.match(r'^\d+(\.\d+)?$', value):

    rm1 = float(value)

    print('Your RM1 is: ', rm1)

else:

    print('Error')


查看完整回答
反对 回复 2021-06-09
  • 2 回答
  • 0 关注
  • 100 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信