我正在用IDLE编写一个基本程序,其中有一个菜单选项,选项从1到4。如果用户输入的是数字以外的任何内容,则会给出一个ValueError:invalid literal for int(),以10为基数:“a”如何检查输入是否不是字母,如果是,则打印我自己的错误消息?
isalpha()
-这是一种字符串方法,用于检查输入的字符串是字母还是单词(只有字母,没有空格或数字)
while True:
user_response = input("Enter an integer : ")
if user_response.isalpha():
print("Error! The value entered is not an integer")
continue
else:
print("This is an integer! Yay!")
break
这个程序有无限的循环,也就是说,直到你输入一个整数,这个程序才会停止。我已经使用了中断和继续关键字。
我不太清楚你是否想测试某个东西是整数还是字母,但我回应的是前一种可能性。
user_response = input("Enter an integer: ")
try:
int(user_response)
is_int = True
except ValueError:
is_int = False
if is_int:
print("This is an integer! Yay!")
else:
print("Error. The value you entered is not an integer.")
我对python相当陌生,因此可能有更好的方法来实现这一点,但这就是我在过去测试输入值是否为整数的方法。
def isNumber (value):
try:
floatval = float(value)
if floatval in (1,2,3,4):
return True
else:
return False
except:
return False
number_choice = input('Please choose a number: 1, 2, 3 or 4.\n')
while isNumber(number_choice) == False:
number_choice = input('Please choose a number: 1, 2, 3 or 4.\n')
else:
print('You have chosen ' + number_choice + '.\n')
这将检查数字是1,2,3还是4,如果不是,将要求用户再次输入数字,直到它符合标准。
问题内容: 我试图在我的一种方法中建立用户输入验证系统…在一定程度上可以正常工作,但是尽管有代码,但它仍然允许整数作为有效输入,我不希望这样,我怎么能更改此代码,以仅允许将字母(字符串)作为有效输入。在这一点上,我感到困惑,我尝试使用整数对该系统进行测试,它可以完美地工作,但是使用字母,无济于事。 有见识? 问题答案: 更换 与 如果使用扫描仪,则仅检查下一步是否有 东西 ,特别是对于字母或其他物
问题内容: 我正在尝试验证我的字符串是否与模式匹配。也就是说,完整的字符串可以写为该模式。但是,如果有任何子字符串匹配该模式,则返回。(如回报,这是我不想在这个例子中,我宁愿验证,整个字符串只含有少量拉丁字母)。 问题答案: 您可以使用 开始 和 结束 标记,并分别指示开始,在您的正则表达式模式的字符串的结尾。这样,您可以使表达式仅匹配整个字符串,而不匹配任何子字符串。在您的情况下,它将如下所示:
问题内容: 我是这个C ++世界的新手,正在尝试为数字密码编写输入验证功能。这是我到目前为止所得到的: 对于不正确的值,它工作得很好,但在有效输入时不会中断循环。知道我在这里缺少什么吗?干杯!! James Kanze脚本的ErroR: 新代码: 使用 和 验证作为字符串 感谢所有人(尤其是James Kanze)的帮助。这件事在这里很有效。 那里还有进一步改进的空间吗?干杯!! 问题答案: 这看
我目前设置了一个函数,该函数要求用户输入一个int,获取该int,然后检查以确保输入符合特定规范。在这种情况下,输入应该是一个介于-10和100之间的整数。现在,如果我输入任何字母字符串,例如“gfUIWYDUF”,函数将返回0。为什么会发生这种情况,我该如何解决?
问题内容: 因此,我几乎搜索了单词“ string”,“ python”,“ validate”,“ user input”等等的每个排列,但是我还没有找到一种适合我的解决方案。 我的目标是提示用户是否要使用字符串“ yes”和“ no”进行另一笔交易,我认为字符串比较在Python中是一个相当简单的过程,但是有些不起作用对。我使用的是Python 3.X,据我所知,输入应使用字符串而不使用原始输
这是我刚接触Python时就一直在阅读的一本书中的一些代码……这一部分按它应该的方式工作 我的困境是…我需要验证输入是什么…因此,如果用户输入的是一个字符串(比如“五”而不是数字),而不是q或数字,它会告诉他们“很抱歉,“五”是无效的。请重试…然后它会再次提示用户输入。我是Python新手,一直在为这个简单的问题绞尽脑汁 *更新**因为我没有足够的积分来为我自己的问题添加答案,所以我在这里发布这个
我正在苦于一个程序,它让用户在两种颜色之间进行选择,要么输入全色(不区分大小写),要么输入颜色的第一个字母(不区分大小写),这取决于他们输入的颜色,它会自动将另一个分配给不同的变量。我的两个选项是蓝色和绿色,蓝色似乎工作良好,但当我输入绿色或g时,方法不断要求我输入一个新的输入。这里是我的程序的一个片段,处理颜色分配。 我基本上是创建一个while循环,确保用户选择其中一个颜色选项,并创建一个方法
我是一个学生,我有一个小问题验证输入。 我试过的是把字符串解析成double的测试,但我做不到。我不知道如何测试双倍是否只是数字。 请给我一个我该做什么的线索。