首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >防止用户键入信件

防止用户键入信件
EN

Stack Overflow用户
提问于 2015-11-30 20:42:08
回答 1查看 4.1K关注 0票数 1

在我的程序中,我问了用户一些基本的数学问题。但我不想让他们打字。是否有一个函数或方法允许我创建一个错误消息,并要求他们重新输入答案。

代码语言:javascript
复制
Answer = int(input ("What is the answer to the question?"))

if Answer == Maths:
        print ("Correct.")
        Score += 1

#function/method to prevent them from entering letters:
        print ("Please enter a valid answer.")

if Answer != Maths:
        print ("Incorrect.")

编辑-我基本上不希望他们输入一个字母,但在某种程度上,它不会崩溃。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-30 20:47:22

以下是等待有效整数的一种方法:

代码语言:javascript
复制
def get_int(prompt):
    while True:
        try:
            answer = int(input(prompt))
            break
        except ValueError:
            print('Please enter an integer value.')
    return answer

# Ask for 10 integers
for i in range(3):
    print(get_int('Enter an integer: '))

输出:

代码语言:javascript
复制
Enter an integer: 1
1
Enter an integer: 2
2
Enter an integer: a
Please enter an integer value.
Enter an integer: b
Please enter an integer value.
Enter an integer: 3
3

如果answer不能转换为整数,它将抛出一个ValueError异常并在while循环中继续。如果answer是有效的,它将从循环中中断。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34007619

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档